Mercurial > pidgin
comparison libpurple/plugin.c @ 21188:a06ddc1513e2
Remove some TODOs on deprecated code.
| author | Richard Laager <rlaager@wiktel.com> |
|---|---|
| date | Sat, 06 Oct 2007 22:46:57 +0000 |
| parents | a8332645ce5b |
| children | 5d93e197ba44 |
comparison
equal
deleted
inserted
replaced
| 21187:a8332645ce5b | 21188:a06ddc1513e2 |
|---|---|
| 58 #ifdef PURPLE_PLUGINS | 58 #ifdef PURPLE_PLUGINS |
| 59 static GList *load_queue = NULL; | 59 static GList *load_queue = NULL; |
| 60 static GList *plugin_loaders = NULL; | 60 static GList *plugin_loaders = NULL; |
| 61 #endif | 61 #endif |
| 62 | 62 |
| 63 /* | |
| 64 * TODO: I think the intention was to allow multiple load and unload | |
| 65 * callback functions. Perhaps using a GList instead of a | |
| 66 * pointer to a single function. | |
| 67 */ | |
| 68 static void (*probe_cb)(void *) = NULL; | 63 static void (*probe_cb)(void *) = NULL; |
| 69 static void *probe_cb_data = NULL; | 64 static void *probe_cb_data = NULL; |
| 70 static void (*load_cb)(PurplePlugin *, void *) = NULL; | 65 static void (*load_cb)(PurplePlugin *, void *) = NULL; |
| 71 static void *load_cb_data = NULL; | 66 static void *load_cb_data = NULL; |
| 72 static void (*unload_cb)(PurplePlugin *, void *) = NULL; | 67 static void (*unload_cb)(PurplePlugin *, void *) = NULL; |
| 252 /* | 247 /* |
| 253 * We pass G_MODULE_BIND_LOCAL here to prevent symbols from | 248 * We pass G_MODULE_BIND_LOCAL here to prevent symbols from |
| 254 * plugins being added to the global name space. | 249 * plugins being added to the global name space. |
| 255 * | 250 * |
| 256 * G_MODULE_BIND_LOCAL was added in glib 2.3.3. | 251 * G_MODULE_BIND_LOCAL was added in glib 2.3.3. |
| 257 * TODO: I guess there's nothing we can do about that? | |
| 258 */ | 252 */ |
| 259 #if GLIB_CHECK_VERSION(2,3,3) | 253 #if GLIB_CHECK_VERSION(2,3,3) |
| 260 plugin->handle = g_module_open(filename, G_MODULE_BIND_LOCAL); | 254 plugin->handle = g_module_open(filename, G_MODULE_BIND_LOCAL); |
| 261 #else | 255 #else |
| 262 plugin->handle = g_module_open(filename, 0); | 256 plugin->handle = g_module_open(filename, 0); |
| 623 | 617 |
| 624 loaded_plugins = g_list_insert_sorted(loaded_plugins, plugin, compare_plugins); | 618 loaded_plugins = g_list_insert_sorted(loaded_plugins, plugin, compare_plugins); |
| 625 | 619 |
| 626 plugin->loaded = TRUE; | 620 plugin->loaded = TRUE; |
| 627 | 621 |
| 628 /* TODO */ | |
| 629 if (load_cb != NULL) | 622 if (load_cb != NULL) |
| 630 load_cb(plugin, load_cb_data); | 623 load_cb(plugin, load_cb_data); |
| 631 | 624 |
| 632 purple_signal_emit(purple_plugins_get_handle(), "plugin-load", plugin); | 625 purple_signal_emit(purple_plugins_get_handle(), "plugin-load", plugin); |
| 633 | 626 |
| 736 loaded_plugins = g_list_remove(loaded_plugins, plugin); | 729 loaded_plugins = g_list_remove(loaded_plugins, plugin); |
| 737 if ((plugin->info != NULL) && PURPLE_IS_PROTOCOL_PLUGIN(plugin)) | 730 if ((plugin->info != NULL) && PURPLE_IS_PROTOCOL_PLUGIN(plugin)) |
| 738 protocol_plugins = g_list_remove(protocol_plugins, plugin); | 731 protocol_plugins = g_list_remove(protocol_plugins, plugin); |
| 739 plugin->loaded = FALSE; | 732 plugin->loaded = FALSE; |
| 740 | 733 |
| 741 /* TODO */ | |
| 742 if (unload_cb != NULL) | 734 if (unload_cb != NULL) |
| 743 unload_cb(plugin, unload_cb_data); | 735 unload_cb(plugin, unload_cb_data); |
| 744 | 736 |
| 745 purple_signal_emit(purple_plugins_get_handle(), "plugin-unload", plugin); | 737 purple_signal_emit(purple_plugins_get_handle(), "plugin-unload", plugin); |
| 746 | 738 |
| 1458 } | 1450 } |
| 1459 | 1451 |
| 1460 void | 1452 void |
| 1461 purple_plugins_register_probe_notify_cb(void (*func)(void *), void *data) | 1453 purple_plugins_register_probe_notify_cb(void (*func)(void *), void *data) |
| 1462 { | 1454 { |
| 1463 /* TODO */ | |
| 1464 probe_cb = func; | 1455 probe_cb = func; |
| 1465 probe_cb_data = data; | 1456 probe_cb_data = data; |
| 1466 } | 1457 } |
| 1467 | 1458 |
| 1468 void | 1459 void |
| 1469 purple_plugins_unregister_probe_notify_cb(void (*func)(void *)) | 1460 purple_plugins_unregister_probe_notify_cb(void (*func)(void *)) |
| 1470 { | 1461 { |
| 1471 /* TODO */ | |
| 1472 probe_cb = NULL; | 1462 probe_cb = NULL; |
| 1473 probe_cb_data = NULL; | 1463 probe_cb_data = NULL; |
| 1474 } | 1464 } |
| 1475 | 1465 |
| 1476 void | 1466 void |
| 1477 purple_plugins_register_load_notify_cb(void (*func)(PurplePlugin *, void *), | 1467 purple_plugins_register_load_notify_cb(void (*func)(PurplePlugin *, void *), |
| 1478 void *data) | 1468 void *data) |
| 1479 { | 1469 { |
| 1480 /* TODO */ | |
| 1481 load_cb = func; | 1470 load_cb = func; |
| 1482 load_cb_data = data; | 1471 load_cb_data = data; |
| 1483 } | 1472 } |
| 1484 | 1473 |
| 1485 void | 1474 void |
| 1486 purple_plugins_unregister_load_notify_cb(void (*func)(PurplePlugin *, void *)) | 1475 purple_plugins_unregister_load_notify_cb(void (*func)(PurplePlugin *, void *)) |
| 1487 { | 1476 { |
| 1488 /* TODO */ | |
| 1489 load_cb = NULL; | 1477 load_cb = NULL; |
| 1490 load_cb_data = NULL; | 1478 load_cb_data = NULL; |
| 1491 } | 1479 } |
| 1492 | 1480 |
| 1493 void | 1481 void |
| 1494 purple_plugins_register_unload_notify_cb(void (*func)(PurplePlugin *, void *), | 1482 purple_plugins_register_unload_notify_cb(void (*func)(PurplePlugin *, void *), |
| 1495 void *data) | 1483 void *data) |
| 1496 { | 1484 { |
| 1497 /* TODO */ | |
| 1498 unload_cb = func; | 1485 unload_cb = func; |
| 1499 unload_cb_data = data; | 1486 unload_cb_data = data; |
| 1500 } | 1487 } |
| 1501 | 1488 |
| 1502 void | 1489 void |
| 1503 purple_plugins_unregister_unload_notify_cb(void (*func)(PurplePlugin *, void *)) | 1490 purple_plugins_unregister_unload_notify_cb(void (*func)(PurplePlugin *, void *)) |
| 1504 { | 1491 { |
| 1505 /* TODO */ | |
| 1506 unload_cb = NULL; | 1492 unload_cb = NULL; |
| 1507 unload_cb_data = NULL; | 1493 unload_cb_data = NULL; |
| 1508 } | 1494 } |
| 1509 | 1495 |
| 1510 PurplePlugin * | 1496 PurplePlugin * |
