pidgin: 6e8da78b: Move the call to flap_connection_schedul...

markdoliner at pidgin.im markdoliner at pidgin.im
Mon Nov 22 05:57:26 EST 2010


----------------------------------------------------------------------
Revision: 6e8da78b6e5ccdafa85c8afebff37e426d9a58d3
Parent:   14ade5475598efa6d9394c801112d2c79e36c314
Author:   markdoliner at pidgin.im
Date:     11/22/10 05:50:32
Branch:   im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/6e8da78b6e5ccdafa85c8afebff37e426d9a58d3

Changelog: 

Move the call to flap_connection_schedule_destroy from oscar_chat_kill
to oscar_chat_leave.  This avoids having flap_connection_schedule_destroy
called from purple_connerr, which itself is called by flap_connection_destroy_cb
I'm hoping this change fixes #5927, the oscar crash when a flap connection
is disconnected.

Changes against parent 14ade5475598efa6d9394c801112d2c79e36c314

  patched  libpurple/protocols/oscar/oscar.c

-------------- next part --------------
============================================================
--- libpurple/protocols/oscar/oscar.c	3815ff8cf1c62f3eaee5077a094ec10ceae80461
+++ libpurple/protocols/oscar/oscar.c	82395d2f22f147eb06810bb105108d79273f48ab
@@ -283,7 +283,6 @@ oscar_chat_kill(PurpleConnection *gc, st
 
 	/* Destroy the chat_connection */
 	od->oscar_chats = g_slist_remove(od->oscar_chats, cc);
-	flap_connection_schedule_destroy(cc->conn, OSCAR_DISCONNECT_DONE, NULL);
 	oscar_chat_destroy(cc);
 }
 
@@ -4451,6 +4450,7 @@ oscar_chat_leave(PurpleConnection *gc, i
 			purple_conversation_get_name(conv));
 
 	cc = find_oscar_chat(gc, purple_conv_chat_get_id(PURPLE_CONV_CHAT(conv)));
+	flap_connection_schedule_destroy(cc->conn, OSCAR_DISCONNECT_DONE, NULL);
 	oscar_chat_kill(gc, cc);
 }
 


More information about the Commits mailing list