pidgin.2.5.6: 592534b6: *** Plucked rev 4831edb9 (darkrain42 at pid...

darkrain42 at pidgin.im darkrain42 at pidgin.im
Wed Apr 29 17:06:09 EDT 2009


-----------------------------------------------------------------
Revision: 592534b63cd3e73bcadf2145c7ced49829245a53
Ancestor: bd59a2a2ed2d4dd5da976e3467553f3c6c31ddfc
Author: darkrain42 at pidgin.im
Date: 2009-04-29T21:01:05
Branch: im.pidgin.pidgin.2.5.6
URL: http://d.pidgin.im/viewmtn/revision/info/592534b63cd3e73bcadf2145c7ced49829245a53

Modified files:
        libpurple/protocols/jabber/jabber.c

ChangeLog: 

*** Plucked rev 4831edb9 (darkrain42 at pidgin.im):
Don't call jabber_parser_close_stream in jabber_close, it papers over a real issue.


-------------- next part --------------
============================================================
--- libpurple/protocols/jabber/jabber.c	d46b7fd23d8613f4c14bc2db9d85d781fc6fa030
+++ libpurple/protocols/jabber/jabber.c	92a876dc2f0f8a907dfc2378ebb8cacb5b80a6a0
@@ -1323,6 +1323,11 @@ void jabber_unregister_account(PurpleAcc
 	jabber_unregister_account_cb(js);
 }
 
+/* TODO: As Will pointed out in IRC, after being notified by the core to
+ * shutdown, we should async. wait for the server to send us the stream
+ * termination before destorying everything. That seems like it would require
+ * changing the semantics of prpl->close(), so it's a good idea for 3.0.0.
+ */
 void jabber_close(PurpleConnection *gc)
 {
 	JabberStream *js = gc->proto_data;
@@ -1334,16 +1339,6 @@ void jabber_close(PurpleConnection *gc)
 	if (!gc->disconnect_timeout)
 		jabber_send_raw(js, "</stream:stream>", -1);
 
-	if (!purple_account_get_current_error(purple_connection_get_account(gc))) {
-		/*
-		 * The common case is user-triggered, so we never receive a
-		 * </stream:stream> from the server when disconnecting, so silence the
-		 * parser's warnings. On errors, though, the server terminated the
-		 * connection, so we should have received a real </stream:stream>.
-		 */
-		jabber_parser_close_stream(js);
-	}
-
 	if (js->srv_query_data)
 		purple_srv_cancel(js->srv_query_data);
 


More information about the Commits mailing list