diff pidgin/gtkmedia.c @ 25702:a1a1f44cdecc

Fixed some memory leak issues involving GLists.
author Mike Ruprecht <maiku@soc.pidgin.im>
date Fri, 11 Jul 2008 02:10:04 +0000
parents 72e738dac5f7
children 1c68f78414b7
line wrap: on
line diff
--- a/pidgin/gtkmedia.c	Fri Jul 11 01:35:54 2008 +0000
+++ b/pidgin/gtkmedia.c	Fri Jul 11 02:10:04 2008 +0000
@@ -298,7 +298,7 @@
 	GList *sessions = purple_media_get_session_names(media);
 	GstBus *bus;
 
-	for (; sessions; sessions = sessions->next) {
+	for (; sessions; sessions = g_list_delete_link(sessions, sessions)) {
 		if (purple_media_get_session_type(media, sessions->data) & PURPLE_MEDIA_AUDIO) {
 			if (!audiosendbin)
 				purple_media_audio_init_src(&audiosendbin, &audiosendlevel);
@@ -315,7 +315,6 @@
 			purple_media_set_sink(media, sessions->data, videorecvbin);
 		}
 	}
-	g_list_free(sessions);
 
 	if (audiosendlevel && audiorecvlevel) {
 		g_object_set(gtkmedia, "send-level", audiosendlevel,