aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat/matroskadec.c
diff options
context:
space:
mode:
authorAurelien Jacobs <aurel@gnuage.org>2007-06-04 22:17:55 +0000
committerAurelien Jacobs <aurel@gnuage.org>2007-06-04 22:17:55 +0000
commit407a3d94f566a68c7a862fcdac812bf53741af94 (patch)
treef601e596243663c1bcb271d629c71a872d21ef11 /libavformat/matroskadec.c
parentb061d892edd76bbdb8cf70b244c661f45185b76c (diff)
downloadffmpeg-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.c3
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;