From 9ba6fb86d8e63a83031824d25d633116e78b4c66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Mon, 31 Oct 2016 09:00:49 +0200 Subject: [PATCH] wavparse: Don't try to add srcpad if we don't know valid caps yet Otherwise we'll run into an assertion on specially crafted files. https://bugzilla.gnome.org/show_bug.cgi?id=773643 --- gst/wavparse/gstwavparse.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gst/wavparse/gstwavparse.c b/gst/wavparse/gstwavparse.c index 6650d183ba..49bc03cc6d 100644 --- a/gst/wavparse/gstwavparse.c +++ b/gst/wavparse/gstwavparse.c @@ -2216,7 +2216,7 @@ pause: else if (wav->segment.rate < 0.0) wav->segment.position = wav->segment.start; } - if (wav->state == GST_WAVPARSE_START) { + if (wav->state == GST_WAVPARSE_START || !wav->caps) { GST_ELEMENT_ERROR (wav, STREAM, WRONG_TYPE, (NULL), ("No valid input found before end of stream")); gst_pad_push_event (wav->srcpad, gst_event_new_eos ()); @@ -2427,7 +2427,7 @@ gst_wavparse_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) break; } case GST_EVENT_EOS: - if (wav->state == GST_WAVPARSE_START) { + if (wav->state == GST_WAVPARSE_START || !wav->caps) { GST_ELEMENT_ERROR (wav, STREAM, WRONG_TYPE, (NULL), ("No valid input found before end of stream")); } else {