]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-7894: On Windows, use critical sections instead of mutexes. (Mutexes on Windows...
authorMichael Giagnocavo <mgg@giagnocavo.net>
Mon, 27 Jul 2015 02:02:22 +0000 (20:02 -0600)
committerMichael Giagnocavo <mgg@giagnocavo.net>
Mon, 27 Jul 2015 02:02:22 +0000 (20:02 -0600)
src/switch_apr.c

index f1f64df360c00c8d6b99f404f5e5723f83f92a82..81b448eba558eae62d8402c6a93dcc704bdddd02 100644 (file)
@@ -269,6 +269,11 @@ SWITCH_DECLARE(switch_status_t) switch_thread_rwlock_unlock(switch_thread_rwlock
 
 SWITCH_DECLARE(switch_status_t) switch_mutex_init(switch_mutex_t ** lock, unsigned int flags, switch_memory_pool_t *pool)
 {
+#ifdef WIN32
+       /* Old version of APR misunderstands mutexes. On Windows, mutexes are cross-process. 
+          APR has no reason to not use critical sections instead of mutexes. */
+       if (flags == SWITCH_MUTEX_NESTED) flags = SWITCH_MUTEX_DEFAULT;
+#endif
        return apr_thread_mutex_create(lock, flags, pool);
 }