aiffparse: make sure we have data before handling sink event
authorLuis de Bethencourt <luis.bg@samsung.com>
Fri, 6 Feb 2015 15:10:55 +0000 (15:10 +0000)
committerLuis de Bethencourt <luis.bg@samsung.com>
Fri, 6 Feb 2015 15:13:43 +0000 (15:13 +0000)
Check AIFF_PARSE_DATA is True before handling sink event, if not goto exit.

gst/aiff/aiffparse.c

index 78854ae741e5eb4337e19ae85af3c2b3061ba7e1..3d9756ce7721a9d8286673939a35e052442b2622 100644 (file)
@@ -1805,6 +1805,11 @@ gst_aiff_parse_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
       GST_DEBUG_OBJECT (aiff, "received segment %" GST_SEGMENT_FORMAT,
           &segment);
 
+      if (aiff->state != AIFF_PARSE_DATA) {
+        GST_DEBUG_OBJECT (aiff, "still starting, eating event");
+        goto exit;
+      }
+
       /* now we are either committed to TIME or BYTE format,
        * and we only expect a BYTE segment, e.g. following a seek */
       if (segment.format == GST_FORMAT_BYTES) {