Mercurial > pidgin.yaz
diff src/plugins.c @ 2125:af59d854de29
[gaim-migrate @ 2135]
bmiller's patch to unload plugins on exit signals
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Mon, 06 Aug 2001 18:12:36 +0000 |
parents | 0b81421021fd |
children | acc11216ec5d |
line wrap: on
line diff
--- a/src/plugins.c Mon Aug 06 17:54:50 2001 +0000 +++ b/src/plugins.c Mon Aug 06 18:12:36 2001 +0000 @@ -981,3 +981,19 @@ return 0; #endif } + +/* Calls the gaim_plugin_remove function in any loaded plugin that has one */ +void remove_all_plugins() +{ + GList *c = plugins; + struct gaim_plugin *p; + void (*gaim_plugin_remove)(); + + while (c) { + p = (struct gaim_plugin *)c->data; + if (g_module_symbol(p->handle, "gaim_plugin_remove", (gpointer *)&gaim_plugin_remove)) + (*gaim_plugin_remove)(); + g_free(p); + c = c->next; + } +}