diff options
author | Aurelien Jacobs <aurel@gnuage.org> | 2006-11-12 16:59:27 +0000 |
---|---|---|
committer | Aurelien Jacobs <aurel@gnuage.org> | 2006-11-12 16:59:27 +0000 |
commit | 7e2447028cc9ba184e2be530288ddd1ee959a852 (patch) | |
tree | bc84d78e7dbdbb62c973940f1f0f72f573a5934e | |
parent | 0032cac2c9baa43a102cc339bfbd79bc209f9998 (diff) | |
download | ffmpeg-7e2447028cc9ba184e2be530288ddd1ee959a852.tar.gz |
Allows playback of truncated matroska files.
Originally committed as revision 6989 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | libavformat/matroska.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/libavformat/matroska.c b/libavformat/matroska.c index 758fe65c7f..7eca05b9b0 100644 --- a/libavformat/matroska.c +++ b/libavformat/matroska.c @@ -1942,7 +1942,7 @@ matroska_parse_seekhead (MatroskaDemuxContext *matroska) /* check ID */ if (!(id = ebml_peek_id (matroska, &matroska->level_up))) - break; + goto finish; if (id != seek_id) { av_log(matroska->ctx, AV_LOG_INFO, "We looked for ID=0x%x but got " @@ -1954,7 +1954,7 @@ matroska_parse_seekhead (MatroskaDemuxContext *matroska) /* read master + parse */ if ((res = ebml_read_master(matroska, &id)) < 0) - break; + goto finish; switch (id) { case MATROSKA_ID_CUES: if (!(res = matroska_parse_index(matroska)) || @@ -1971,8 +1971,6 @@ matroska_parse_seekhead (MatroskaDemuxContext *matroska) } break; } - if (res < 0) - break; finish: /* remove dummy level */ |