libs/gst/base/gstcollectpads.c: clear/reset segment info in FLUSH_STOP.
authorMark Nauwelaerts <manauw@skynet.be>
Tue, 23 May 2006 09:40:14 +0000 (09:40 +0000)
committerWim Taymans <wim.taymans@gmail.com>
Tue, 23 May 2006 09:40:14 +0000 (09:40 +0000)
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet dot be>
* libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
(gst_collect_pads_event):
clear/reset segment info in FLUSH_STOP.
Fixes #336929.

ChangeLog
libs/gst/base/gstcollectpads.c

index d77dd8a..851c890 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2006-05-23  Wim Taymans  <wim@fluendo.com>
+
+       Patch by: Mark Nauwelaerts <manauw at skynet dot be>
+
+       * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
+       (gst_collect_pads_event):
+       clear/reset segment info in FLUSH_STOP.
+       Fixes #336929.
+
 2006-05-22  Stefan Kost  <ensonic@users.sf.net>
 
        * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop),
index ab5ae10..d1f37d9 100644 (file)
@@ -860,6 +860,9 @@ gst_collect_pads_event (GstPad * pad, GstEvent * event)
       GST_OBJECT_LOCK (pads);
       data->abidata.ABI.flushing = FALSE;
       gst_collect_pads_pop (pads, data);
+      /* we need new segment info after the flush */
+      gst_segment_init (&data->segment, GST_FORMAT_UNDEFINED);
+      data->abidata.ABI.new_segment = FALSE;
       /* if the pad was EOS, remove the EOS flag and
        * decrement the number of eospads */
       if (G_UNLIKELY (data->abidata.ABI.eos == TRUE)) {