Bug 37979

Summary: Port libgypsy to GDBus
Product: Gypsy Reporter: Leo Nocturchenko <noct>
Component: GeneralAssignee: Ross Burton <ross>
Status: NEW --- QA Contact:
Severity: normal    
Priority: medium CC: noct
Version: unspecified   
Hardware: All   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Leo Nocturchenko 2011-06-06 03:09:27 UTC
Gypsy uses dbus-glib for dbus communication, and dbus-glib is not thread safe at all. And doesn't seem to get this fixed any time soon ( http://permalink.gmane.org/gmane.comp.freedesktop.dbus/14015 ).

This makes gypsy not thread safe as well. And this makes impossible to call gypsy from a worker thread (any thread other than gmainloop), because brings random crashes with assertion failures insude dbus-glib ( described here: http://lists.freedesktop.org/archives/dbus/2009-June/011554.html )

So in order to work properly in multithread environment, gypsy should move to another, thread-safe backend for dbus, like GDbus, suggested by maintainers of dbus-glib.
Comment 1 Ross Burton 2011-06-06 03:21:34 UTC
A workaround would be to use the DBus API directly with GDBus.  The C wrapper library is purely for convenience.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.