# HG changeset patch # User aurel # Date 1219271415 0 # Node ID b8f428926617d38bf78ce3bb70868402e5e703f0 # Parent d9d8ee457c224cda3fecc9ff206f1a2edb6dae0e matroskadec: stop parsing when skipping en element crossing over the end of file diff -r d9d8ee457c22 -r b8f428926617 matroskadec.c --- a/matroskadec.c Wed Aug 20 00:49:45 2008 +0000 +++ b/matroskadec.c Wed Aug 20 22:30:15 2008 +0000 @@ -765,7 +765,7 @@ return ebml_parse_nest(matroska, syntax->def.n, data); case EBML_PASS: return ebml_parse_id(matroska, syntax->def.n, id, data); case EBML_STOP: *(int *)data = 1; return 1; - default: url_fskip(pb, length); return 0; + default: return url_fseek(pb,length,SEEK_CUR)<0 ? AVERROR(EIO) : 0; } if (res == AVERROR_INVALIDDATA) av_log(matroska->ctx, AV_LOG_ERROR, "Invalid element\n");