Mercurial > pidgin
changeset 25587:3b674151cd60
*** Plucked rev 4831edb9 (darkrain42@pidgin.im):
Don't call jabber_parser_close_stream in jabber_close, it papers over a real issue.
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Wed, 29 Apr 2009 21:01:05 +0000 |
parents | f424f26dd329 |
children | 21a90a4c76d6 |
files | libpurple/protocols/jabber/jabber.c |
diffstat | 1 files changed, 5 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/libpurple/protocols/jabber/jabber.c Wed Apr 29 20:57:53 2009 +0000 +++ b/libpurple/protocols/jabber/jabber.c Wed Apr 29 21:01:05 2009 +0000 @@ -1323,6 +1323,11 @@ 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 @@ 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);