Correctly reset and free user->extinfo when the buddy is not listening to

Mon, 31 May 2010 06:51:16 +0000

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Mon, 31 May 2010 06:51:16 +0000
changeset 30394
1f73e5b91bec
parent 30393
78e803db9dc0
child 30397
9cff79eeef0d

Correctly reset and free user->extinfo when the buddy is not listening to
anything, or the tune icon will stay around for no reason.

Fixes #12050.

libpurple/protocols/msn/notification.c file | annotate | diff | comparison | revisions
--- a/libpurple/protocols/msn/notification.c	Mon May 31 06:35:17 2010 +0000
+++ b/libpurple/protocols/msn/notification.c	Mon May 31 06:51:16 2010 +0000
@@ -1595,6 +1595,7 @@
 		user->extinfo->media_album = NULL;
 		user->extinfo->media_artist = NULL;
 		user->extinfo->media_title = NULL;
+		user->extinfo->media_type = CURRENT_MEDIA_UNKNOWN;
 	}
 
 	if (len != 0) {
@@ -1609,6 +1610,11 @@
 		msn_user_set_statusline(user, NULL);
 	}
 
+	if (user->extinfo && user->extinfo->media_type == CURRENT_MEDIA_UNKNOWN) {
+		g_free(user->extinfo);
+		user->extinfo = NULL;
+	}
+
 	msn_user_update(user);
 }
 

mercurial