summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Sarakeev <sarakusha@gmail.com>2014-09-18 12:29:37 +0400
committerSebastian Dröge <sebastian@centricular.com>2014-09-19 09:38:24 +0300
commit2a96363d3f752f589b2a4f66433fdf741241d2b5 (patch)
tree35b13ef63bd881187afa1e6db32f7cba08a7e47e
parentdc912c6d88a76445c47e4046f53034fac058c676 (diff)
downloadgstreamer-plugins-base-2a96363d3f752f589b2a4f66433fdf741241d2b5.tar.gz
playbin: Don't leak input-selector sinkpads
https://bugzilla.gnome.org/show_bug.cgi?id=736861
-rw-r--r--gst/playback/gstplaybin2.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gst/playback/gstplaybin2.c b/gst/playback/gstplaybin2.c
index ab5879863..5583de1b8 100644
--- a/gst/playback/gstplaybin2.c
+++ b/gst/playback/gstplaybin2.c
@@ -1890,6 +1890,9 @@ gst_play_bin_set_current_video_stream (GstPlayBin * playbin, gint stream)
g_object_set (combiner, "active-pad", sinkpad, NULL);
}
+ if (old_sinkpad)
+ gst_object_unref (old_sinkpad);
+
gst_object_unref (combiner);
}
gst_object_unref (sinkpad);
@@ -1956,6 +1959,10 @@ gst_play_bin_set_current_audio_stream (GstPlayBin * playbin, gint stream)
/* activate the selected pad */
g_object_set (combiner, "active-pad", sinkpad, NULL);
}
+
+ if (old_sinkpad)
+ gst_object_unref (old_sinkpad);
+
gst_object_unref (combiner);
}
gst_object_unref (sinkpad);