diff options
author | Michał Wróbel <michal.wrobel@flytronic.pl> | 2012-06-01 17:45:37 +0200 |
---|---|---|
committer | Murray Cumming <murrayc@murrayc.com> | 2012-06-08 15:55:05 +0200 |
commit | f0922e07e760b6b6ae3dca14609e35e31b27716b (patch) | |
tree | fbca7ed4ab33dddb25409217325d6b2fb5078b58 | |
parent | 3e1d6bb41b5ed6187d7a5fdffcb00e6182fc49c8 (diff) | |
download | glibmm-f0922e07e760b6b6ae3dca14609e35e31b27716b.tar.gz |
Thread::RecMutex: Don't initialize this as a GStaticMutex.
The previous code (removed here) depended on an implementation
detail of GStaticRecMutex, which was changed in this glib commit:
http://git.gnome.org/browse/glib/commit/?id=2b281e40f32b7916d856dcc95e6f8fe625fcff03
This change avoids a deadlock with that version of glib.
Note that Thread::* is deprecated anyway, which is lucky because we do not
know for sure that this fix is enough.
Bug #677291
-rw-r--r-- | ChangeLog | 13 | ||||
-rw-r--r-- | glib/src/thread.ccg | 4 |
2 files changed, 13 insertions, 4 deletions
@@ -1,3 +1,16 @@ +2012-06-08 Michał Wróbel <michal.wrobel@flytronic.pl> + + Thread::RecMutex: Don't initialize this as a GStaticMutex. + + The previous code (removed here) depended on an implementation + detail of GStaticRecMutex, which was changed in this glib commit: + http://git.gnome.org/browse/glib/commit/?id=2b281e40f32b7916d856dcc95e6f8fe625fcff03 + + This change avoids a deadlock with that version of glib. + Note that Thread::* is deprecated anyway, which is lucky because we do not + know for sure that this fix is enough. + Bug #677291 + 2012-06-04 Kjell Ahlstedt <kjell.ahlstedt@bredband.net> Glib::add_exception_handler(): Fix misplaced endif. diff --git a/glib/src/thread.ccg b/glib/src/thread.ccg index 990ec6b9..1c32547b 100644 --- a/glib/src/thread.ccg +++ b/glib/src/thread.ccg @@ -286,10 +286,6 @@ StaticRecMutex::operator RecMutex&() RecMutex::RecMutex() { g_static_rec_mutex_init(&gobject_); - - // GLib doesn't have GRecMutex, only GStaticRecMutex. Force initialization - // of the mutex now, to mimic the behaviour of a (hypothetical) GRecMutex. - g_static_mutex_get_mutex(&gobject_.mutex); } RecMutex::~RecMutex() |