libpurple/pounce.c

changeset 31656
0a950c84d9a6
parent 31655
23ee3cdf91f2
child 31694
bf2950a7ced6
child 33794
716cbef8d1c6
--- a/libpurple/pounce.c	Fri Apr 08 01:12:37 2011 +0000
+++ b/libpurple/pounce.c	Fri Apr 08 01:21:15 2011 +0000
@@ -697,13 +697,16 @@
 void
 purple_pounce_destroy_all_by_buddy(PurpleBuddy *buddy)
 {
-	const char *pouncee;
-	PurpleAccount *pouncer;
+	const char *pouncee, *bname;
+	PurpleAccount *pouncer, *bacct;
 	PurplePounce *pounce;
 	GList *l, *l_next;
 
 	g_return_if_fail(buddy != NULL);
 
+	bacct = purple_buddy_get_account(buddy);
+	bname = purple_buddy_get_name(buddy);
+
 	for (l = purple_pounces_get_all(); l != NULL; l = l_next) {
 		pounce = (PurplePounce *)l->data;
 		l_next = l->next;
@@ -711,7 +714,7 @@
 		pouncer = purple_pounce_get_pouncer(pounce);
 		pouncee = purple_pounce_get_pouncee(pounce);
 
-		if ( (pouncer == buddy->account) && (strcmp(pouncee, buddy->name) == 0) )
+		if ( (pouncer == bacct) && (strcmp(pouncee, bname) == 0) )
 			purple_pounce_destroy(pounce);
 	}
 }

mercurial