summaryrefslogtreecommitdiff
path: root/libavformat/movenc.c
diff options
context:
space:
mode:
authorMaksym Veremeyenko <verem@m1stereo.tv>2012-01-23 13:59:37 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-01-23 20:49:29 +0100
commit2aadff2e44fa27664ccd1b0a63829e61bf82e939 (patch)
treebba2318c6608a7f79b6d17e5f74293c8bf47a312 /libavformat/movenc.c
parentf7a9b1deee24945c91eff18bbaeeb996e4d5b50c (diff)
downloadffmpeg-2aadff2e44fa27664ccd1b0a63829e61bf82e939.tar.gz
limit chunk size to 1GB
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/movenc.c')
-rw-r--r--libavformat/movenc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index 276353143f..06d18f91f8 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -1948,7 +1948,8 @@ static void build_chunks(MOVTrack *trk)
chunk->chunkNum= 1;
trk->chunkCount= 1;
for(i=1; i<trk->entry; i++){
- if(chunk->pos + chunkSize == trk->cluster[i].pos){
+ if(chunk->pos + chunkSize == trk->cluster[i].pos &&
+ chunkSize + trk->cluster[i].size < UINT32_MAX / 4){
chunkSize += trk->cluster[i].size;
chunk->samplesInChunk += trk->cluster[i].entries;
}else{