summaryrefslogtreecommitdiffstats
path: root/libmpdemux
diff options
context:
space:
mode:
authormosu <mosu@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-09-20 10:10:11 +0000
committermosu <mosu@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-09-20 10:10:11 +0000
commit6df04eae8592dab4e834c5a84a46acad2c636dbd (patch)
tree31fcaab3121e94438f958802ccc5425c3aeb2d31 /libmpdemux
parentfeda7257912b438c79f4761cec411c8d83a058b1 (diff)
downloadmpv-6df04eae8592dab4e834c5a84a46acad2c636dbd.tar.bz2
mpv-6df04eae8592dab4e834c5a84a46acad2c636dbd.tar.xz
Fix for borked .mov files with bogus user data length values. Patch by Marek Zelem.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@10889 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux')
-rw-r--r--libmpdemux/demux_mov.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libmpdemux/demux_mov.c b/libmpdemux/demux_mov.c
index 567471fb8c..cd3513a976 100644
--- a/libmpdemux/demux_mov.c
+++ b/libmpdemux/demux_mov.c
@@ -1455,9 +1455,13 @@ static void lschunks(demuxer_t* demuxer,int level,off_t endpos,mov_track_t* trak
case MOV_FOURCC('A','l','l','F'):
default:
{
+ if( udta_len>udta_size)
+ udta_len=udta_size;
+ {
char dump[udta_len-4];
stream_read(demuxer->stream, (char *)&dump, udta_len-4-4);
udta_size -= udta_len;
+ }
}
}
}