File libbonobo-2.32.0-gthread.patch of Package mingw64-libbonobo

diff -urEbwB libbonobo-2.32.0/activation-server/activation-server-main.c libbonobo-2.32.0/activation-server/activation-server-main.c
--- libbonobo-2.32.0/activation-server/activation-server-main.c	2010-08-18 19:41:32.000000000 +0200
+++ libbonobo-2.32.0/activation-server/activation-server-main.c	2013-04-02 10:38:34.230374439 +0200
@@ -68,7 +68,7 @@
 
 static gboolean        server_threaded = FALSE;
 static glong           server_guard_depth = 0;
-static GStaticRecMutex server_guard = G_STATIC_REC_MUTEX_INIT;
+static GRecMutex       server_guard;
 
 static PortableServer_POA
 server_get_poa (void)
@@ -102,7 +102,7 @@
 #endif
         server_guard_depth = 0;
         for (i = 0; i < state; i++)
-                g_static_rec_mutex_unlock (&server_guard);
+                g_rec_mutex_unlock (&server_guard);
         return state;
 }
 
@@ -115,7 +115,7 @@
                 return;
 
         for (i = 0; i < state; i++)
-                g_static_rec_mutex_lock (&server_guard);
+                g_rec_mutex_lock (&server_guard);
         server_guard_depth = state;
 #ifdef BONOBO_ACTIVATION_DEBUG
         fprintf (stderr, "thread %p re-taken server guard with depth %ld\n",
@@ -129,7 +129,7 @@
         if (!server_threaded)
                 return;
 
-        g_static_rec_mutex_lock (&server_guard);
+        g_rec_mutex_lock (&server_guard);
         server_guard_depth++;
         fprintf (stderr, "thread %p take guard [%ld]\n",
                  g_thread_self (), server_guard_depth);
@@ -144,7 +144,7 @@
         fprintf (stderr, "thread %p release guard [%ld]\n",
                  g_thread_self (), server_guard_depth);
         server_guard_depth--;
-        g_static_rec_mutex_unlock (&server_guard);
+        g_rec_mutex_unlock (&server_guard);
 }
 
 #ifdef G_OS_WIN32
diff -urEbwB libbonobo-2.32.0/bonobo-activation/bonobo-activation-init.c libbonobo-2.32.0/bonobo-activation/bonobo-activation-init.c
--- libbonobo-2.32.0/bonobo-activation/bonobo-activation-init.c	2009-04-20 15:16:57.000000000 +0200
+++ libbonobo-2.32.0/bonobo-activation/bonobo-activation-init.c	2013-04-02 10:37:26.652983470 +0200
@@ -46,7 +46,7 @@
 
 #include <orbit/orbit.h>
 
-GStaticRecMutex _bonobo_activation_guard = G_STATIC_REC_MUTEX_INIT;
+GRecMutex _bonobo_activation_guard;
 static CORBA_ORB bonobo_activation_orb = CORBA_OBJECT_NIL;
 static CORBA_Context bonobo_activation_context;
 static gboolean is_initialized = FALSE;
diff -urEbwB libbonobo-2.32.0/bonobo-activation/bonobo-activation-private.h libbonobo-2.32.0/bonobo-activation/bonobo-activation-private.h
--- libbonobo-2.32.0/bonobo-activation/bonobo-activation-private.h	2009-04-20 15:16:57.000000000 +0200
+++ libbonobo-2.32.0/bonobo-activation/bonobo-activation-private.h	2013-04-02 10:39:02.358704996 +0200
@@ -31,9 +31,9 @@
 
 #define BONOBO_ACTIVATION_FACTORY_PRIVATE_TIMEOUT 1
 
-extern GStaticRecMutex _bonobo_activation_guard;
-#define BONOBO_ACTIVATION_LOCK()   g_static_rec_mutex_lock   (&_bonobo_activation_guard)
-#define BONOBO_ACTIVATION_UNLOCK() g_static_rec_mutex_unlock (&_bonobo_activation_guard)
+extern GRecMutex _bonobo_activation_guard;
+#define BONOBO_ACTIVATION_LOCK()   g_rec_mutex_lock   (&_bonobo_activation_guard)
+#define BONOBO_ACTIVATION_UNLOCK() g_rec_mutex_unlock (&_bonobo_activation_guard)
 
 void         bonobo_activation_timeout_reg_check_set  (gboolean           on);
 gboolean     bonobo_activation_timeout_reg_check      (gpointer           data);
openSUSE Build Service is sponsored by