]> git.sesse.net Git - ffmpeg/blobdiff - libavutil/imgutils.c
Merge commit '7fccc96dc3c0bb2fa2079cbf4e4cf1aff2db46c8'
[ffmpeg] / libavutil / imgutils.c
index a8bc18d0256c65a1d1df49feed1fac217bc29fe0..ef0e67154b83c5fbd6b67b6625a07d5075377deb 100644 (file)
@@ -219,6 +219,14 @@ int av_image_alloc(uint8_t *pointers[4], int linesizes[4],
     if (desc->flags & AV_PIX_FMT_FLAG_PAL || desc->flags & AV_PIX_FMT_FLAG_PSEUDOPAL)
         avpriv_set_systematic_pal2((uint32_t*)pointers[1], pix_fmt);
 
+    if ((desc->flags & AV_PIX_FMT_FLAG_PAL ||
+         desc->flags & AV_PIX_FMT_FLAG_PSEUDOPAL) &&
+        pointers[1] - pointers[0] > linesizes[0] * h) {
+        /* zero-initialize the padding before the palette */
+        memset(pointers[0] + linesizes[0] * h, 0,
+               pointers[1] - pointers[0] - linesizes[0] * h);
+    }
+
     return ret;
 }