diff options
Diffstat (limited to 'src/common/helper.c')
-rw-r--r-- | src/common/helper.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/common/helper.c b/src/common/helper.c index c8065716..255f9f3b 100644 --- a/src/common/helper.c +++ b/src/common/helper.c | |||
@@ -254,9 +254,11 @@ static void connector(const gchar *handler_name, | |||
254 | GObject *connect_object, | 254 | GObject *connect_object, |
255 | gboolean after, | 255 | gboolean after, |
256 | gpointer user_data) { | 256 | gpointer user_data) { |
257 | Plugin * plug = user_data; | 257 | GladeXML * xml = user_data; |
258 | Plugin * plug; | ||
258 | void * method; | 259 | void * method; |
259 | 260 | ||
261 | plug = plugin; | ||
260 | method = NULL; | 262 | method = NULL; |
261 | while (plug != NULL) { | 263 | while (plug != NULL) { |
262 | method = trybindDynamicMethod(plug->library, | 264 | method = trybindDynamicMethod(plug->library, |
@@ -272,14 +274,15 @@ static void connector(const gchar *handler_name, | |||
272 | handler_name); | 274 | handler_name); |
273 | return; | 275 | return; |
274 | } | 276 | } |
275 | glade_xml_signal_connect(getMainXML(), | 277 | glade_xml_signal_connect(xml, |
276 | handler_name, | 278 | handler_name, |
277 | (GCallback) method); | 279 | (GCallback) method); |
278 | } | 280 | } |
279 | 281 | ||
280 | void connectGladeWithPlugins(GladeXML * xml) { | 282 | void connectGladeWithPlugins(GladeXML * xml) { |
281 | glade_xml_signal_autoconnect_full(xml, | 283 | glade_xml_signal_autoconnect_full(xml, |
282 | &connector, plugin); | 284 | &connector, |
285 | xml); | ||
283 | } | 286 | } |
284 | 287 | ||
285 | typedef void (*PlainCall)(); | 288 | typedef void (*PlainCall)(); |