The block_size might be used incorrectly if it is not updated.
authorBenjamin Larsson <banan@ludd.ltu.se>
Sun, 21 Jan 2007 14:14:50 +0000 (14:14 +0000)
committerBenjamin Larsson <banan@ludd.ltu.se>
Sun, 21 Jan 2007 14:14:50 +0000 (14:14 +0000)
Originally committed as revision 7607 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/flashsv.c

index 4f99856..b5905e1 100644 (file)
@@ -135,12 +135,12 @@ static int flashsv_decode_frame(AVCodecContext *avctx,
     if(s->block_size < s->block_width*s->block_height) {
         if (s->tmpblock != NULL)
             av_free(s->tmpblock);
-        s->block_size = s->block_width*s->block_height;
-        if ((s->tmpblock = av_malloc(3*s->block_size)) == NULL) {
+        if ((s->tmpblock = av_malloc(3*s->block_width*s->block_height)) == NULL) {
             av_log(avctx, AV_LOG_ERROR, "Can't allocate decompression buffer.\n");
             return -1;
         }
     }
+    s->block_size = s->block_width*s->block_height;
 
     /* init the image size once */
     if((avctx->width==0) && (avctx->height==0)){