diff options
author | Chris Evans <cevans@chromium.org> | 2012-01-04 16:33:34 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-01-04 21:58:08 +0100 |
commit | f35e037c93cf7d25e65b4a2ed3674358f05e4bed (patch) | |
tree | 1f18b6ecfb1a5efc7ba79ccbce9f1d250585daa9 /libavformat/matroskadec.c | |
parent | f0f2babca23a3d099bcd5a1e18cf5d0eae2f4ef3 (diff) | |
download | ffmpeg-f35e037c93cf7d25e65b4a2ed3674358f05e4bed.tar.gz |
mkv: Fix a bug where a pointer was cached to an array that might later move due to
a realloc()
BUG=100492
Review URL: http://codereview.chromium.org/8366004
Fixes: 1 of 2 for CVE-2011-3893
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/matroskadec.c')
-rw-r--r-- | libavformat/matroskadec.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index fd1001ef8e..600b1f4c60 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -1223,7 +1223,6 @@ static int matroska_parse_seekhead_entry(MatroskaDemuxContext *matroska, int idx static void matroska_execute_seekhead(MatroskaDemuxContext *matroska) { EbmlList *seekhead_list = &matroska->seekhead; - MatroskaSeekhead *seekhead = seekhead_list->elem; int64_t before_pos = avio_tell(matroska->ctx->pb); int i; @@ -1233,6 +1232,7 @@ static void matroska_execute_seekhead(MatroskaDemuxContext *matroska) return; for (i = 0; i < seekhead_list->nb_elem; i++) { + MatroskaSeekhead *seekhead = seekhead_list->elem; if (seekhead[i].pos <= before_pos) continue; |