pidgin: e2a43a07: Initialize the commands subsystem before...

sadrul at pidgin.im sadrul at pidgin.im
Sun Jul 13 11:50:48 EDT 2008


-----------------------------------------------------------------
Revision: e2a43a07463b9b8f8bedb4d4831b98986c6184dd
Ancestor: d2e4560619da68f5b4346dcf1247908d88f39eb3
Author: sadrul at pidgin.im
Date: 2008-07-13T15:51:38
Branch: im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/e2a43a07463b9b8f8bedb4d4831b98986c6184dd

Modified files:
        libpurple/core.c

ChangeLog: 

Initialize the commands subsystem before the plugins.
This is necessary because plugins can add commands, and if the commands
subsystem isn't initialized by then, it throws a runtime error, causing a
crash with G_DEBUG=fatal_warnings (and from make check too, it seems).
Thanks to Richard for finding the bug.

-------------- next part --------------
============================================================
--- libpurple/core.c	14ae09df76080254e1d9f8ebcccffbf54525a828
+++ libpurple/core.c	94e0158bb36c1eba61f0687830b5f0f7f671c720
@@ -131,6 +131,7 @@ purple_core_init(const char *ui)
 #endif
 
 	purple_ciphers_init();
+	purple_cmds_init();
 
 	/* Since plugins get probed so early we should probably initialize their
 	 * subsystem right away too.
@@ -170,7 +171,6 @@ purple_core_init(const char *ui)
 	purple_xfers_init();
 	purple_idle_init();
 	purple_smileys_init();
-	purple_cmds_init();
 
 	/*
 	 * Call this early on to try to auto-detect our IP address and
@@ -199,7 +199,6 @@ purple_core_quit(void)
 	purple_connections_disconnect_all();
 
 	/* Save .xml files, remove signals, etc. */
-	purple_cmds_uninit();
 	purple_smileys_uninit();
 	purple_idle_uninit();
 	purple_ssl_uninit();
@@ -233,6 +232,7 @@ purple_core_quit(void)
 	purple_dbus_uninit();
 #endif
 
+	purple_cmds_uninit();
 	purple_util_uninit();
 
 	purple_signals_uninit();


More information about the Commits mailing list