im.pidgin.pidgin: 460aba5b2654186a68c8babb283d169aebe69346

datallah at pidgin.im datallah at pidgin.im
Thu Nov 15 20:45:36 EST 2007


-----------------------------------------------------------------
Revision: 460aba5b2654186a68c8babb283d169aebe69346
Ancestor: aa5755e2bbb192720280d03992695f67baae16fc
Author: datallah at pidgin.im
Date: 2007-11-16T01:39:53
Branch: im.pidgin.pidgin

Modified files:
        libpurple/protocols/msnp9/userlist.c

ChangeLog: 

Fix #3911 by checking that the connection is still valid when authorizing or denying an MSN auth. request.

-------------- next part --------------
============================================================
--- libpurple/protocols/msnp9/userlist.c	326580aca1caa4d40a247dbc31880e4091a6bc9b
+++ libpurple/protocols/msnp9/userlist.c	c8f65c75fc2dd9e294412c7e84d8c51b468d8552
@@ -41,11 +41,16 @@ msn_accept_add_cb(gpointer data)
 msn_accept_add_cb(gpointer data)
 {
 	MsnPermitAdd *pa = data;
-	MsnSession *session = pa->gc->proto_data;
-	MsnUserList *userlist = session->userlist;
+	MsnSession *session;
+	MsnUserList *userlist;
 
-	msn_userlist_add_buddy(userlist, pa->who, MSN_LIST_AL, NULL);
+	if (PURPLE_CONNECTION_IS_VALID(pa->gc)) {
+		session = pa->gc->proto_data;
+		userlist = session->userlist;
 
+		msn_userlist_add_buddy(userlist, pa->who, MSN_LIST_AL, NULL);
+	}
+
 	g_free(pa->who);
 	g_free(pa->friendly);
 	g_free(pa);
@@ -55,11 +60,16 @@ msn_cancel_add_cb(gpointer data)
 msn_cancel_add_cb(gpointer data)
 {
 	MsnPermitAdd *pa = data;
-	MsnSession *session = pa->gc->proto_data;
-	MsnUserList *userlist = session->userlist;
+	MsnSession *session;
+	MsnUserList *userlist;
 
-	msn_userlist_add_buddy(userlist, pa->who, MSN_LIST_BL, NULL);
+	if (PURPLE_CONNECTION_IS_VALID(pa->gc)) {
+		session = pa->gc->proto_data;
+		userlist = session->userlist;
 
+		msn_userlist_add_buddy(userlist, pa->who, MSN_LIST_BL, NULL);
+	}
+
 	g_free(pa->who);
 	g_free(pa->friendly);
 	g_free(pa);


More information about the Commits mailing list