diff options
author | Sebastian Dröge <slomo@circular-chaos.org> | 2008-06-18 20:09:28 +0000 |
---|---|---|
committer | Sebastian Dröge <slomo@circular-chaos.org> | 2008-06-18 20:09:28 +0000 |
commit | 0865a6019e62a401ea4759ed2985cfda02b60a28 (patch) | |
tree | a7a47f9d309d54ef18124fdf790ee6ca8b062c01 | |
parent | 54f515d2c8e3b6f7a2f6460613ff9e087aca0a6d (diff) |
gst/matroska/matroska-demux.c: Update FIXME/TODOs and only ignore EOS at the central, important place instead of seve...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_contents_seekentry):
Update FIXME/TODOs and only ignore EOS at the central, important place
instead of several places.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | gst/matroska/matroska-demux.c | 21 |
2 files changed, 12 insertions, 16 deletions
@@ -1,3 +1,10 @@ +2008-06-18 Sebastian Dröge <slomo@circular-chaos.org> + + * gst/matroska/matroska-demux.c: + (gst_matroska_demux_parse_contents_seekentry): + Update FIXME/TODOs and only ignore EOS at the central, important place + instead of several places. + 2008-06-18 Wim Taymans <wim.taymans@collabora.co.uk> * gst/rtp/gstrtpg726pay.c: diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c index e70ecc32..907e3409 100644 --- a/gst/matroska/matroska-demux.c +++ b/gst/matroska/matroska-demux.c @@ -21,12 +21,8 @@ * Boston, MA 02111-1307, USA. */ -/* TODO: "Unkown track header" & "Unknown entry": implement if useful - * TODO: dynamic number of tracks without upper bound - * FIXME: uint64 -> int64 overflows! +/* TODO: dynamic number of tracks without upper bound * TODO: check CRC32 if present - * FIXME: go out of loops, don't add Track or whatever if something goes wrong - * or required elements are not there * TODO: there can be a segment after the first segment. Handle like * chained oggs. Fixes #334082 * TODO: handle gaps better, especially gaps at the start of a track. @@ -955,8 +951,8 @@ gst_matroska_demux_add_stream (GstMatroskaDemux * demux) else context->flags &= ~GST_MATROSKA_VIDEOTRACK_INTERLACED; GST_DEBUG_OBJECT (demux, "TrackVideoInterlaced: %d", - (context-> - flags & GST_MATROSKA_VIDEOTRACK_INTERLACED) ? 1 : 0); + (context->flags & GST_MATROSKA_VIDEOTRACK_INTERLACED) ? 1 : + 0); break; } @@ -4104,12 +4100,8 @@ gst_matroska_demux_parse_contents_seekentry (GstMatroskaDemux * demux) GList *l; DEBUG_ELEMENT_START (demux, ebml, "SeekHead"); - ret = gst_ebml_read_master (ebml, &id); - if (ret == GST_FLOW_UNEXPECTED) - ret = GST_FLOW_OK; - - if (ret != GST_FLOW_OK) - break; + if ((ret = gst_ebml_read_master (ebml, &id)) != GST_FLOW_OK) + goto finish; /* Prevent infinite recursion if there's a cycle from * one seekhead to the same again. Simply break if @@ -4123,9 +4115,6 @@ gst_matroska_demux_parse_contents_seekentry (GstMatroskaDemux * demux) } ret = gst_matroska_demux_parse_contents (demux); - - if (ret == GST_FLOW_UNEXPECTED) - ret = GST_FLOW_OK; break; } case GST_MATROSKA_ID_ATTACHMENTS: |