diff options
author | Mark Nauwelaerts <mnauw@users.sourceforge.net> | 2015-03-23 20:56:41 +0100 |
---|---|---|
committer | Mark Nauwelaerts <mnauw@users.sourceforge.net> | 2015-03-29 13:58:56 +0200 |
commit | 593cfa086c4e7f8eb29328f493883e2495055585 (patch) | |
tree | cae7a861ac223fa849724704ced2ff5a1ed27dc7 /gst | |
parent | d56b11af56b53157fca03e9b21aa827164d10a00 (diff) |
matroskademux: resurrect some flow return handling
https://bugzilla.gnome.org/show_bug.cgi?id=744572
Diffstat (limited to 'gst')
-rw-r--r-- | gst/matroska/matroska-demux.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c index 317bb9fb9..cf3d4a304 100644 --- a/gst/matroska/matroska-demux.c +++ b/gst/matroska/matroska-demux.c @@ -1502,6 +1502,7 @@ gst_matroska_demux_move_to_entry (GstMatroskaDemux * demux, /* update the time */ gst_matroska_read_common_reset_streams (&demux->common, entry->time, TRUE); + gst_flow_combiner_reset (demux->flowcombiner); demux->common.segment.position = entry->time; demux->seek_block = entry->block; demux->seek_first = TRUE; @@ -3655,7 +3656,8 @@ gst_matroska_demux_parse_blockgroup_or_simpleblock (GstMatroskaDemux * demux, } } /* combine flows */ - ret = gst_flow_combiner_update_flow (demux->flowcombiner, ret); + ret = gst_flow_combiner_update_pad_flow (demux->flowcombiner, + stream->pad, ret); next_lace: size -= lace_size[n]; @@ -3681,7 +3683,8 @@ eos: stream->eos = TRUE; ret = GST_FLOW_OK; /* combine flows */ - ret = gst_flow_combiner_update_flow (demux->flowcombiner, ret); + ret = gst_flow_combiner_update_pad_flow (demux->flowcombiner, stream->pad, + ret); goto done; } invalid_lacing: @@ -4744,6 +4747,7 @@ gst_matroska_demux_handle_sink_event (GstPad * pad, GstObject * parent, GST_OBJECT_LOCK (demux); gst_matroska_read_common_reset_streams (&demux->common, GST_CLOCK_TIME_NONE, TRUE); + gst_flow_combiner_reset (demux->flowcombiner); dur = demux->common.segment.duration; gst_segment_init (&demux->common.segment, GST_FORMAT_TIME); demux->common.segment.duration = dur; |