summaryrefslogtreecommitdiff
path: root/src/jthread/jmutex.h
diff options
context:
space:
mode:
authorWeblate <42@minetest.ru>2013-06-01 13:18:52 +0200
committerWeblate <42@minetest.ru>2013-06-01 13:18:52 +0200
commit1dfc2e02b3c358af4bb20bb3cb60ac7bd3ed1124 (patch)
tree54660f353f3342f89b6259ea6a5dfedfa20dc16f /src/jthread/jmutex.h
parentec039a3d123120f9918812b13f5971e94546b9af (diff)
parent64627817fcca52f20948c24b60ce192b218f6ce2 (diff)
downloadminetest-1dfc2e02b3c358af4bb20bb3cb60ac7bd3ed1124.tar.gz
minetest-1dfc2e02b3c358af4bb20bb3cb60ac7bd3ed1124.tar.bz2
minetest-1dfc2e02b3c358af4bb20bb3cb60ac7bd3ed1124.zip
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'src/jthread/jmutex.h')
-rw-r--r--src/jthread/jmutex.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/jthread/jmutex.h b/src/jthread/jmutex.h
index e528aeb4a..383150f3f 100644
--- a/src/jthread/jmutex.h
+++ b/src/jthread/jmutex.h
@@ -57,6 +57,7 @@ public:
int Lock();
int Unlock();
bool IsInitialized() { return initialized; }
+
private:
#if (defined(WIN32) || defined(_WIN32_WCE))
#ifdef JMUTEX_CRITICALSECTION
@@ -66,6 +67,14 @@ private:
#endif // JMUTEX_CRITICALSECTION
#else // pthread mutex
pthread_mutex_t mutex;
+
+ bool IsLocked() {
+ if (pthread_mutex_trylock(&mutex)) {
+ pthread_mutex_unlock(&mutex);
+ return true;
+ }
+ return false;
+ }
#endif // WIN32
bool initialized;
};