[Bf-blender-cvs] [d3999683ff5] master: WebP: Fix use after free

Aaron Carlisle noreply at git.blender.org
Fri Mar 25 02:21:42 CET 2022


Commit: d3999683ff5ac8b42de74cb453b459096f76f542
Author: Aaron Carlisle
Date:   Thu Mar 24 21:20:26 2022 -0400
Branches: master
https://developer.blender.org/rBd3999683ff5ac8b42de74cb453b459096f76f542

WebP: Fix use after free

===================================================================

M	source/blender/imbuf/intern/webp.c

===================================================================

diff --git a/source/blender/imbuf/intern/webp.c b/source/blender/imbuf/intern/webp.c
index 89e1686493d..19fe2373ea0 100644
--- a/source/blender/imbuf/intern/webp.c
+++ b/source/blender/imbuf/intern/webp.c
@@ -85,7 +85,6 @@ bool imb_savewebp(struct ImBuf *ibuf, const char *name, int UNUSED(flags))
     }
 
     last_row = (unsigned char *)(rgb_rect + (ibuf->y - 1) * ibuf->x * 3);
-    MEM_freeN(rgb_rect);
 
     if (ibuf->foptions.quality == 100.0f) {
       encoded_data_size = WebPEncodeLosslessRGB(
@@ -95,6 +94,7 @@ bool imb_savewebp(struct ImBuf *ibuf, const char *name, int UNUSED(flags))
       encoded_data_size = WebPEncodeRGB(
           last_row, ibuf->x, ibuf->y, -3 * ibuf->x, ibuf->foptions.quality, &encoded_data);
     }
+    MEM_freeN(rgb_rect);
   }
   else if (bytesperpixel == 4) {
     last_row = (unsigned char *)(ibuf->rect + (ibuf->y - 1) * ibuf->x);



More information about the Bf-blender-cvs mailing list