Browse code

diracdec: allocate enough space for blocks

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>

Michael Niedermayer authored on 2012/11/11 11:35:10
Showing 1 changed files
... ...
@@ -346,7 +346,7 @@ static int alloc_sequence_buffers(DiracContext *s)
346 346
 
347 347
     /* fixme: allocate using real stride here */
348 348
     s->sbsplit  = av_malloc(sbwidth * sbheight);
349
-    s->blmotion = av_malloc(sbwidth * sbheight * 4 * sizeof(*s->blmotion));
349
+    s->blmotion = av_malloc(sbwidth * sbheight * 16 * sizeof(*s->blmotion));
350 350
     s->edge_emu_buffer_base = av_malloc((w+64)*MAX_BLOCKSIZE);
351 351
 
352 352
     s->mctmp     = av_malloc((w+64+MAX_BLOCKSIZE) * (h*MAX_BLOCKSIZE) * sizeof(*s->mctmp));