[rhythmbox] xfade: don't leak tags for streams that never get played
- From: Jonathan Matthew <jmatthew src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [rhythmbox] xfade: don't leak tags for streams that never get played
- Date: Wed, 13 Jun 2012 09:19:33 +0000 (UTC)
commit 195c2a7b4fbdead120b6355c1570496bd638dbe8
Author: Jonathan Matthew <jonathan d14n org>
Date: Wed Jun 13 19:14:03 2012 +1000
xfade: don't leak tags for streams that never get played
When a track gets skipped before it even starts playing, the
buffered tag lists that would have been processed when it started
need to be cleaned up in the dispose function.
backends/gstreamer/rb-player-gst-xfade.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
---
diff --git a/backends/gstreamer/rb-player-gst-xfade.c b/backends/gstreamer/rb-player-gst-xfade.c
index e6e1b73..ff42f0a 100644
--- a/backends/gstreamer/rb-player-gst-xfade.c
+++ b/backends/gstreamer/rb-player-gst-xfade.c
@@ -447,6 +447,11 @@ rb_xfade_stream_dispose (GObject *object)
sd->player = NULL;
}
+ if (sd->tags != NULL) {
+ rb_list_destroy_free (sd->tags, (GDestroyNotify) gst_tag_list_free);
+ sd->tags = NULL;
+ }
+
rb_xfade_stream_dispose_stream_data (sd);
G_OBJECT_CLASS (rb_xfade_stream_parent_class)->dispose (object);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]