Mercurial > pidgin
comparison src/plugin.c @ 5357:2a1c92df7024
[gaim-migrate @ 5733]
This should make event broadcasting on loader plugins (like perl) work
again.
committer: Tailor Script <tailor@pidgin.im>
author | Christian Hammond <chipx86@chipx86.com> |
---|---|
date | Sun, 11 May 2003 21:47:29 +0000 |
parents | d1fe8e320dab |
children | ad445074d239 |
comparison
equal
deleted
inserted
replaced
5356:1333675218a4 | 5357:2a1c92df7024 |
---|---|
251 | 251 |
252 if (gaim_plugin_is_loaded(plugin)) | 252 if (gaim_plugin_is_loaded(plugin)) |
253 return TRUE; | 253 return TRUE; |
254 | 254 |
255 if (plugin->native_plugin) { | 255 if (plugin->native_plugin) { |
256 if (plugin->info != NULL && plugin->info->load != NULL) | 256 if (plugin->info != NULL) { |
257 plugin->info->load(plugin); | 257 if (plugin->info->load != NULL) |
258 plugin->info->load(plugin); | |
259 | |
260 if (plugin->info->type == GAIM_PLUGIN_LOADER) { | |
261 GaimPluginLoaderInfo *loader_info; | |
262 | |
263 loader_info = GAIM_PLUGIN_LOADER_INFO(plugin); | |
264 | |
265 if (loader_info->broadcast != NULL) | |
266 gaim_signals_register_broadcast_func(loader_info->broadcast, | |
267 NULL); | |
268 } | |
269 } | |
258 } | 270 } |
259 else { | 271 else { |
260 GaimPlugin *loader; | 272 GaimPlugin *loader; |
261 GaimPluginLoaderInfo *loader_info; | 273 GaimPluginLoaderInfo *loader_info; |
262 | 274 |
334 g_free(puo); | 346 g_free(puo); |
335 } | 347 } |
336 | 348 |
337 g_list_free(prpl_info->user_opts); | 349 g_list_free(prpl_info->user_opts); |
338 } | 350 } |
351 else if (plugin->info->type == GAIM_PLUGIN_LOADER) { | |
352 GaimPluginLoaderInfo *loader_info; | |
353 | |
354 loader_info = GAIM_PLUGIN_LOADER_INFO(plugin); | |
355 | |
356 if (loader_info->broadcast != NULL) | |
357 gaim_signals_unregister_broadcast_func(loader_info->broadcast); | |
358 } | |
339 } | 359 } |
340 else { | 360 else { |
341 GaimPlugin *loader; | 361 GaimPlugin *loader; |
342 GaimPluginLoaderInfo *loader_info; | 362 GaimPluginLoaderInfo *loader_info; |
343 | 363 |