GActionGroupExporter: stop using signal IDs
authorRyan Lortie <desrt@desrt.ca>
Mon, 12 Dec 2011 18:28:09 +0000 (13:28 -0500)
committerRyan Lortie <desrt@desrt.ca>
Mon, 12 Dec 2011 18:33:54 +0000 (13:33 -0500)
commit93f17967e4c6c5194d3c0cc4512169b6bd394bf7
treebaee9c05ae82493536c42a022c69494486d20036
parentbbae5fe94193104ea24124e284bc3cccf9bdcb73
GActionGroupExporter: stop using signal IDs

GDBusConnection recently changed to dispatching its GDestroyNotify calls
from an idle instead of on-the-spot.  Under the previous regime, we
would destroy-notify the action group export of a GtkApplicationWindow
at the point it was removed from the application (ie: slightly before
being disposed).

With the destroy notify now deferred to an idle, the window has already
been disposed, so the signal handlers have already been disconnected.

Avoid the problem by dropping our use of signal IDs and just do
g_signal_handlers_disconnect_by_func(), which doesn't complain if there
is no connection.
gio/gactiongroupexporter.c