ext/mpeg2dec/gstmpeg2dec.c: When getting a seek event, first check if the upstream...
authorTim-Philipp Müller <tim@centricular.net>
Wed, 21 Dec 2005 10:25:34 +0000 (10:25 +0000)
committerTim-Philipp Müller <tim@centricular.net>
Wed, 21 Dec 2005 10:25:34 +0000 (10:25 +0000)
Original commit message from CVS:
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_src_event):
When getting a seek event, first check if the upstream element
can handle it and only do our own seek stuff when it can't
(should fix #322856).

ChangeLog
ext/mpeg2dec/gstmpeg2dec.c

index f70c407..9eddba6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2005-12-21  Tim-Philipp Müller  <tim at centricular dot net>
+
+       * ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_src_event):
+         When getting a seek event, first check if the upstream element
+         can handle it and only do our own seek stuff when it can't
+         (should fix #322856).
+
 2005-12-21  Josef Zlomek  <josef dot zlomek at xeris dot cz>
 
        Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
index 122658b..af2e948 100644 (file)
@@ -1325,14 +1325,17 @@ gst_mpeg2dec_src_event (GstPad * pad, GstEvent * event)
 
   switch (GST_EVENT_TYPE (event)) {
       /* the all-formats seek logic */
-    case GST_EVENT_SEEK:
-      if (mpeg2dec->index)
-        res = index_seek (pad, event);
-      else
-        res = normal_seek (pad, event);
-
+    case GST_EVENT_SEEK:{
+      gst_event_ref (event);
+      if (!(res = gst_pad_event_default (pad, event))) {
+        if (mpeg2dec->index)
+          res = index_seek (pad, event);
+        else
+          res = normal_seek (pad, event);
+      }
       gst_event_unref (event);
       break;
+    }
     case GST_EVENT_NAVIGATION:
       /* Forward a navigation event unchanged */
     default: