From 0865a6019e62a401ea4759ed2985cfda02b60a28 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20Dr=C3=B6ge?= Date: Wed, 18 Jun 2008 20:09:28 +0000 Subject: [PATCH] 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. --- ChangeLog | 7 +++++++ gst/matroska/matroska-demux.c | 21 +++++---------------- 2 files changed, 12 insertions(+), 16 deletions(-) diff --git a/ChangeLog b/ChangeLog index 91740c6..7fb1398 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2008-06-18 Sebastian Dröge + + * 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 * gst/rtp/gstrtpg726pay.c: diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c index e70ecc3..907e340 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: -- 2.7.4