Comment 22 for bug 1347272

Revision history for this message
Alistair Buxton (a-j-buxton) wrote : Re: Several XFCE applications appear irresponsible after communicating with a daemon

Hi Alberto,

Thanks for compiling all this information. There's a couple of pieces missing though.

This bug doesn't happen as far as I know with vanilla Gtk. It happens when the Unity Gtk extensions (dbusmenu and overlay scrollbar) are loaded. They are Gtk plugins and one or both of them open dbus connections as soon as they are loaded. They are loaded at Gtk init and that dbus connection becomes invalid after the fork, but Gtk tries to reuse it anyway. That causes it to hang.

As a result of the above, this bug only happens if you have Unity installed alongside the affected software eg Xfce. So a good way to spot duplicates is to ask if the user also has Unity installed if they are not using it.

Another thing is that those Gtk extensions should not be loaded at all outside of Unity. There is a bug about that: https://bugs.launchpad.net/ubuntu/+source/xfce4-indicator-plugin/+bug/1307657

Finally, we don't have a metabug like this upstream at Xfce because bugzilla is not good at handling those types of bugs, but we are aware of the issue and there is a thread on the mailing list about it. https://mail.xfce.org/pipermail/xfce4-dev/2014-May/030715.html

The conclusion we reached is that even though this is ultimately caused by Unity extensions, each application should be fixed to fork *before* it calls Gtk init, because you never know what extra plugins might get loaded and subsequently break.