pidgin.2.5.6: 73c7d5c6: disapproval of revision '2f2d084c77a5b90...
elb at pidgin.im
elb at pidgin.im
Tue Apr 28 20:46:02 EDT 2009
-----------------------------------------------------------------
Revision: 73c7d5c691f2f0ef8b50a3cca10fb646bdf1b557
Ancestor: 2f2d084c77a5b905a47b7b28508172451a2bb82f
Author: elb at pidgin.im
Date: 2009-04-29T00:39:13
Branch: im.pidgin.pidgin.2.5.6
URL: http://d.pidgin.im/viewmtn/revision/info/73c7d5c691f2f0ef8b50a3cca10fb646bdf1b557
Modified files:
ChangeLog libpurple/core.c libpurple/plugin.c
libpurple/plugin.h
ChangeLog:
disapproval of revision '2f2d084c77a5b905a47b7b28508172451a2bb82f'
-------------- next part --------------
============================================================
--- ChangeLog a5b17c7a4d6cb28b0055a01d2a1daca25bc52abe
+++ ChangeLog cb289ceee6637006903e233c4658d828a66b0a9a
@@ -1,9 +1,6 @@ version 2.5.6 (??/??/2009):
Pidgin and Finch: The Pimpin' Penguin IM Clients That're Good for the Soul
version 2.5.6 (??/??/2009):
- libpurple:
- * Fix various crashes on exit.
-
IRC:
* Correctly handle WHOIS for users who are joined to a large number of
channels.
============================================================
--- libpurple/core.c 92f9c866e318d322257bacd6c6131eeb875295c8
+++ libpurple/core.c 7901b8aea56c0d511c622be638656e6dd7e3c45f
@@ -209,11 +209,16 @@ purple_core_quit(void)
/* The SSL plugins must be uninit before they're unloaded */
purple_ssl_uninit();
- /* Unload all non-loader, non-prpl plugins before shutting down
- * subsystems. */
- purple_debug_info("main", "Unloading normal plugins\n");
- purple_plugins_unload(PURPLE_PLUGIN_STANDARD);
+ /* Unload all plugins before the UI because UI plugins might call
+ * UI-specific functions */
+ purple_debug_info("main", "Unloading all plugins\n");
+ purple_plugins_destroy_all();
+ /* Shut down the UI before all the subsystems */
+ ops = purple_core_get_ui_ops();
+ if (ops != NULL && ops->quit != NULL)
+ ops->quit();
+
/* Save .xml files, remove signals, etc. */
purple_smileys_uninit();
purple_idle_uninit();
@@ -234,16 +239,7 @@ purple_core_quit(void)
purple_imgstore_uninit();
purple_network_uninit();
- /* Everything after unloading all plugins must not fail if prpls aren't
- * around */
- purple_debug_info("main", "Unloading all plugins\n");
- purple_plugins_destroy_all();
-
- ops = purple_core_get_ui_ops();
- if (ops != NULL && ops->quit != NULL)
- ops->quit();
-
- /* Everything after prefs_uninit must not try to read any prefs */
+ /* Everything after this must not try to read any prefs */
purple_prefs_uninit();
purple_plugins_uninit();
#ifdef HAVE_DBUS
@@ -251,7 +247,7 @@ purple_core_quit(void)
#endif
purple_cmds_uninit();
- /* Everything after util_uninit cannot try to write things to the confdir */
+ /* Everything after this cannot try to write things to the confdir */
purple_util_uninit();
purple_signals_uninit();
============================================================
--- libpurple/plugin.c b7b0859b3da745950964c38c0d383d5aef8db7a9
+++ libpurple/plugin.c 7309f99d3b111275964baa812057aad503d1e7ed
@@ -1229,21 +1229,6 @@ void
}
void
-purple_plugins_unload(PurplePluginType type)
-{
-#ifdef PURPLE_PLUGINS
- GList *l;
-
- for (l = plugins; l; l = l->next) {
- PurplePlugin *plugin = l->data;
- if (plugin->info->type == type && purple_plugin_is_loaded(plugin))
- purple_plugin_unload(plugin);
- }
-
-#endif /* PURPLE_PLUGINS */
-}
-
-void
purple_plugins_destroy_all(void)
{
#ifdef PURPLE_PLUGINS
============================================================
--- libpurple/plugin.h 8c221aa275a0dfb16ebb8c8a78d1614751f24c6f
+++ libpurple/plugin.h be0247f88ff5b3005e4406be67b28325a0f8b5c7
@@ -503,11 +503,6 @@ void purple_plugins_unload_all(void);
void purple_plugins_unload_all(void);
/**
- * Unloads all plugins of a specific type.
- */
-void purple_plugins_unload(PurplePluginType type);
-
-/**
* Destroys all registered plugins.
*/
void purple_plugins_destroy_all(void);
More information about the Commits
mailing list