avcodec/webp: add assert to ensure palette is not larger than 256
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 5 Oct 2014 11:00:40 +0000 (13:00 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 5 Oct 2014 11:00:40 +0000 (13:00 +0200)
it should not be possible to be larger as its stored as 8bit value
but we would be overwriting a stack buffer if it is ...

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/webp.c

index 92becb6..4b1c8e7 100644 (file)
@@ -1065,6 +1065,7 @@ static int apply_color_indexing_transform(WebPContext *s)
     if (img->frame->height * img->frame->width > 300) {
         uint8_t palette[256 * 4];
         const int size = pal->frame->width * 4;
+        av_assert0(size <= 1024U);
         memcpy(palette, GET_PIXEL(pal->frame, 0, 0), size);   // copy palette
         // set extra entries to transparent black
         memset(palette + size, 0, 256 * 4 - size);