ext/ogg/gstoggdemux.c: If no stream was found before receiving EOS, post an error...
authorWim Taymans <wim.taymans@gmail.com>
Tue, 25 Nov 2008 15:28:36 +0000 (15:28 +0000)
committerWim Taymans <wim.taymans@gmail.com>
Tue, 25 Nov 2008 15:28:36 +0000 (15:28 +0000)
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_sink_event):
If no stream was found before receiving EOS, post an error message.
Fixes #561924.

ChangeLog
ext/ogg/gstoggdemux.c

index 096c49b..824d1b8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2008-11-25  Wim Taymans  <wim.taymans@collabora.co.uk>
 
+       * ext/ogg/gstoggdemux.c: (gst_ogg_demux_sink_event):
+       If no stream was found before receiving EOS, post an error message.
+       Fixes #561924.
+
+2008-11-25  Wim Taymans  <wim.taymans@collabora.co.uk>
+
        * ext/theora/gsttheoraenc.h:
        * ext/theora/theoraenc.c: (gst_theora_enc_init),
        (theora_buffer_from_packet), (theora_push_packet),
index 9ab9f04..120be20 100644 (file)
@@ -1484,6 +1484,15 @@ gst_ogg_demux_sink_event (GstPad * pad, GstEvent * event)
       res = TRUE;
       break;
     case GST_EVENT_EOS:
+    {
+      GST_DEBUG_OBJECT (ogg, "got an EOS event");
+      res = gst_pad_event_default (pad, event);
+      if (ogg->current_chain == NULL) {
+        GST_ELEMENT_ERROR (ogg, STREAM, DEMUX, (NULL),
+            ("can't get first chain"));
+      }
+      break;
+    }
     default:
       res = gst_pad_event_default (pad, event);
       break;