diff options
author | Janne Grunau <janne-libav@jannau.net> | 2012-10-09 14:54:01 +0200 |
---|---|---|
committer | Janne Grunau <janne-libav@jannau.net> | 2012-10-09 15:39:05 +0200 |
commit | 4ffbe3f3a5d9892841d9bc31d859916c2c61123f (patch) | |
tree | 72fd7ee71fd5923be05e1f4ae7b1998dcd324c70 | |
parent | 53e122dd4afbb5bbdbba8b18bee0beb460242dc7 (diff) | |
download | ffmpeg-4ffbe3f3a5d9892841d9bc31d859916c2c61123f.tar.gz |
matroskaenc: check cue point validity before reallocation
Prevents memory leak and possible access to freed memory.
Fixes CID605744.
-rw-r--r-- | libavformat/matroskaenc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 3e32943153..b37d10cba1 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -368,13 +368,13 @@ static int mkv_add_cuepoint(mkv_cues *cues, int stream, int64_t ts, int64_t clus { mkv_cuepoint *entries = cues->entries; + if (ts < 0) + return 0; + entries = av_realloc(entries, (cues->num_entries + 1) * sizeof(mkv_cuepoint)); if (entries == NULL) return AVERROR(ENOMEM); - if (ts < 0) - return 0; - entries[cues->num_entries ].pts = ts; entries[cues->num_entries ].tracknum = stream + 1; entries[cues->num_entries++].cluster_pos = cluster_pos - cues->segment_offset; |