summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhoonhee.lee <hoonhee.lee@lge.com>2018-04-25 09:28:53 +0900
committerEdward Hervey <bilboed@bilboed.com>2018-05-01 09:54:22 +0200
commit2012e1d1c6dc84115ad3e36dc10ded898c69b4e6 (patch)
treef9d9feafdba3cd4477db4437d54979744ee61a65
parentfac9f88f0675dda59cb27e231f6942d76d79d903 (diff)
uridecodebin3: don't segfault if a pad is not a source pad when it is removed
Ignore to handling a pad of decodebin3 which doesn't have corresponding output when it is removed. https://bugzilla.gnome.org/show_bug.cgi?id=795529
-rw-r--r--gst/playback/gsturidecodebin3.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gst/playback/gsturidecodebin3.c b/gst/playback/gsturidecodebin3.c
index 9b2147a75..436e37c12 100644
--- a/gst/playback/gsturidecodebin3.c
+++ b/gst/playback/gsturidecodebin3.c
@@ -565,6 +565,9 @@ db_pad_removed_cb (GstElement * element, GstPad * pad, GstURIDecodeBin3 * dec)
GList *tmp;
OutputPad *output = NULL;
+ if (!GST_PAD_IS_SRC (pad))
+ return;
+
GST_DEBUG_OBJECT (dec, "pad %s:%s", GST_DEBUG_PAD_NAME (pad));
/* FIXME: LOCK for list access */