changeset 24970:0e50e4e7aef7

merge of '414e6fd248a6ee80f1bc52c4c4fe5b24f6375f88' and 'ce7325225416ec95baeeda78efa250ccc0c8dc87'
author Elliott Sales de Andrade <qulogic@pidgin.im>
date Tue, 20 Jan 2009 03:15:56 +0000
parents 50d1fac8f78c (current diff) 08a2a4029f20 (diff)
children 859e5b3f5c47 161d9bdcca3c
files ChangeLog
diffstat 2 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Jan 20 02:43:19 2009 +0000
+++ b/ChangeLog	Tue Jan 20 03:15:56 2009 +0000
@@ -4,6 +4,7 @@
 	libpurple:
 	* Fix transfer of buddy icons, custom smileys and files from the
 	latest WLM 9 official client. (Thomas Gibson-Robinson)
+	* Fix a crash when removing an account with an unknown protocol id.
 
 	Finch:
 	* Allow rebinding keys to change the focused widget (details in the
--- a/libpurple/blist.c	Tue Jan 20 02:43:19 2009 +0000
+++ b/libpurple/blist.c	Tue Jan 20 03:15:56 2009 +0000
@@ -1811,7 +1811,7 @@
 	PurpleGroup *group;
 	struct _purple_hbuddy hb;
 	PurplePlugin *prpl;
-	PurplePluginProtocolInfo *prpl_info;
+	PurplePluginProtocolInfo *prpl_info = NULL;
 
 	g_return_if_fail(buddy != NULL);
 
@@ -1872,7 +1872,8 @@
 	 * can free proto_data
 	 */
 	prpl = purple_find_prpl(purple_account_get_protocol_id(buddy->account));
-	prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl);
+	if (prpl)
+		prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl);
 	if (prpl_info && prpl_info->buddy_free)
 		prpl_info->buddy_free(buddy);