diff options
author | Aurelien Jacobs <aurel@gnuage.org> | 2007-06-04 22:17:55 +0000 |
---|---|---|
committer | Aurelien Jacobs <aurel@gnuage.org> | 2007-06-04 22:17:55 +0000 |
commit | 407a3d94f566a68c7a862fcdac812bf53741af94 (patch) | |
tree | f601e596243663c1bcb271d629c71a872d21ef11 /libavformat/matroskadec.c | |
parent | b061d892edd76bbdb8cf70b244c661f45185b76c (diff) | |
download | ffmpeg-407a3d94f566a68c7a862fcdac812bf53741af94.tar.gz |
fix an infinite loop in case one cluster is not enough to demux a packet
Originally committed as revision 9216 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/matroskadec.c')
-rw-r--r-- | libavformat/matroskadec.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index a74944bb38..6397e04352 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -2531,7 +2531,7 @@ matroska_read_packet (AVFormatContext *s, AVPacket *pkt) { MatroskaDemuxContext *matroska = s->priv_data; - int res = 0; + int res; uint32_t id; /* Read stream until we have a packet queued. */ @@ -2541,6 +2541,7 @@ matroska_read_packet (AVFormatContext *s, if (matroska->done) return AVERROR_IO; + res = 0; while (res == 0) { if (!(id = ebml_peek_id(matroska, &matroska->level_up))) { return AVERROR_IO; |