baseparse: do not ignore TIME segments
authorThiago Santos <ts.santos@sisa.samsung.com>
Wed, 8 Jan 2014 19:28:54 +0000 (16:28 -0300)
committerThiago Santos <ts.santos@sisa.samsung.com>
Wed, 8 Jan 2014 19:40:23 +0000 (16:40 -0300)
TIME segments are being ignored and a standard initialized
segment is used instead. This causes issues as not properly detecting
reverse playback or not cliping output based on the segment.

This seems to be a regression from one of the GstSegment/GstEvent
redesigns on the 0.10 -> 1.0 transition

libs/gst/base/gstbaseparse.c

index 6bf4a56..4d0672f 100644 (file)
@@ -1087,6 +1087,7 @@ gst_base_parse_sink_event_default (GstBaseParse * parse, GstEvent * event)
          * whatever else it might claim */
         parse->priv->upstream_seekable = FALSE;
         next_dts = in_segment->start;
          * whatever else it might claim */
         parse->priv->upstream_seekable = FALSE;
         next_dts = in_segment->start;
+        gst_event_copy_segment (event, &out_segment);
       }
 
       memcpy (&parse->segment, &out_segment, sizeof (GstSegment));
       }
 
       memcpy (&parse->segment, &out_segment, sizeof (GstSegment));