im.pidgin.pidgin: 533f20655f2746913e4d2b550e64698d0f3866e4

datallah at pidgin.im datallah at pidgin.im
Thu Nov 15 21:46:28 EST 2007


-----------------------------------------------------------------
Revision: 533f20655f2746913e4d2b550e64698d0f3866e4
Ancestor: 7807e3dc9242ef5bf314960f5d47681270a21775
Author: datallah at pidgin.im
Date: 2007-11-16T02:41:37
Branch: im.pidgin.pidgin

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

ChangeLog: 

Fix #3669

-------------- next part --------------
============================================================
--- libpurple/protocols/jabber/jabber.c	7d9763a8978ccb927c40f3045c0b19405b4cee25
+++ libpurple/protocols/jabber/jabber.c	7060246922bf6fd1245b0022bc84dbf3a6dca04f
@@ -60,7 +60,7 @@ static PurplePlugin *my_protocol = NULL;
 #define JABBER_CONNECT_STEPS (js->gsc ? 9 : 5)
 
 static PurplePlugin *my_protocol = NULL;
-GList *jabber_features;
+GList *jabber_features = NULL;
 
 static void jabber_unregister_account_cb(JabberStream *js);
 
@@ -209,11 +209,11 @@ void jabber_process_packet(JabberStream 
 		jabber_message_parse(js, *packet);
 	} else if(!strcmp((*packet)->name, "stream:features")) {
 		jabber_stream_features_parse(js, *packet);
-	} else if (!strcmp((*packet)->name, "features") &&
+	} else if (!strcmp((*packet)->name, "features") && xmlns &&
 		   !strcmp(xmlns, "http://etherx.jabber.org/streams")) {
 		jabber_stream_features_parse(js, *packet);
 	} else if(!strcmp((*packet)->name, "stream:error") ||
-			 (!strcmp((*packet)->name, "error") &&
+			 (!strcmp((*packet)->name, "error") && xmlns &&
 				!strcmp(xmlns, "http://etherx.jabber.org/streams")))
 	{
 		jabber_stream_handle_error(js, *packet);
@@ -1384,7 +1384,7 @@ void jabber_remove_feature(const char *s
 			g_free(feat->namespace);
 			
 			g_free(feature->data);
-			feature = g_list_delete_link(feature, feature);
+			jabber_features = g_list_delete_link(jabber_features, feature);
 			break;
 		}
 	}


More information about the Commits mailing list