gst/realmedia/rmdemux.c: Flush timestamp correction variables on a flush. Fixes ...
authorWim Taymans <wim.taymans@gmail.com>
Mon, 19 May 2008 10:23:46 +0000 (10:23 +0000)
committerWim Taymans <wim.taymans@gmail.com>
Mon, 19 May 2008 10:23:46 +0000 (10:23 +0000)
Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_send_event):
Flush timestamp correction variables on a flush. Fixes #533832.

ChangeLog
gst/realmedia/rmdemux.c

index d9c8472..1d3ab22 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-05-19  Wim Taymans  <wim.taymans@collabora.co.uk>
+
+       * gst/realmedia/rmdemux.c: (gst_rmdemux_send_event):
+       Flush timestamp correction variables on a flush. Fixes #533832.
+
 2008-05-14  Jan Schmidt  <jan.schmidt@sun.com>
 
        * configure.ac:
index 4135aae..e1bb4f1 100644 (file)
@@ -1255,6 +1255,17 @@ gst_rmdemux_send_event (GstRMDemux * rmdemux, GstEvent * event)
     GST_DEBUG_OBJECT (rmdemux, "Pushing %s event on pad %s",
         GST_EVENT_TYPE_NAME (event), GST_PAD_NAME (stream->pad));
 
+    switch (GST_EVENT_TYPE (event)) {
+      case GST_EVENT_FLUSH_STOP:
+        stream->last_ts = -1;
+        stream->next_ts = -1;
+        stream->last_seq = -1;
+        stream->next_seq = -1;
+        stream->last_flow = GST_FLOW_OK;
+        break;
+      default:
+        break;
+    }
     gst_event_ref (event);
     gst_pad_push_event (stream->pad, event);
   }