Mercurial > libavformat.hg
changeset 6127:f9967eb0abfd libavformat
matroskadec: fix type of the length field in ebml_read_master()
Also use the correct value for unknown size (instead of a truncated
and sign extended value).
author | aurel |
---|---|
date | Fri, 11 Jun 2010 17:16:43 +0000 |
parents | 72bfd56f9a18 |
children | c34ed49b26c6 |
files | matroskadec.c |
diffstat | 1 files changed, 2 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/matroskadec.c Fri Jun 11 16:45:38 2010 +0000 +++ b/matroskadec.c Fri Jun 11 17:16:43 2010 +0000 @@ -657,7 +657,7 @@ * are supposed to be sub-elements which can be read separately. * 0 is success, < 0 is failure. */ -static int ebml_read_master(MatroskaDemuxContext *matroska, int length) +static int ebml_read_master(MatroskaDemuxContext *matroska, uint64_t length) { ByteIOContext *pb = matroska->ctx->pb; MatroskaLevel *level; @@ -718,7 +718,7 @@ break; if (!syntax[i].id && id == MATROSKA_ID_CLUSTER && matroska->num_levels > 0 && - matroska->levels[matroska->num_levels-1].length == 0xffffffffffffffff) + matroska->levels[matroska->num_levels-1].length == 0xffffffffffffff) return 0; // we reached the end of an unknown size cluster if (!syntax[i].id && id != EBML_ID_VOID && id != EBML_ID_CRC32) av_log(matroska->ctx, AV_LOG_INFO, "Unknown entry 0x%X\n", id);