Commit: 147e22ef700124dcbaa5576b72a2a77e73adf350
Author: Bastien Montagne
Date:   Mon Jan 28 21:46:05 2019 +0100
Branches: master
https://developer.blender.org/rB147e22ef700124dcbaa5576b72a2a77e73adf350

Fix T60840: Serious memleak in solidify modifier.

Another one painful to pin down, due to misleading info in report, and
more than anything else, waaayyyyy too complex example file!

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

M       source/blender/modifiers/intern/MOD_solidify.c

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

diff --git a/source/blender/modifiers/intern/MOD_solidify.c 
b/source/blender/modifiers/intern/MOD_solidify.c
index 6283b7a250d..d43e843f9d5 100644
--- a/source/blender/modifiers/intern/MOD_solidify.c
+++ b/source/blender/modifiers/intern/MOD_solidify.c
@@ -379,7 +379,10 @@ static Mesh *applyModifier(
                CustomData_copy_data(&mesh->edata, &result->edata, 0, 
(int)numEdges, (int)numEdges);
 
                CustomData_copy_data(&mesh->ldata, &result->ldata, 0, 0, 
(int)numLoops);
-               CustomData_copy_data(&mesh->ldata, &result->ldata, 0, 
(int)numLoops, (int)numLoops);
+               /* DO NOT copy here the 'copied' part of loop data, we want to 
reverse loops
+                * (so that winding of copied face get reversed, so that 
normals get reversed
+                * and point in expected direction...).
+                * If we also copy data here, then this data get overwritten 
(and allocated memory becomes memleak). */
 
                CustomData_copy_data(&mesh->pdata, &result->pdata, 0, 0, 
(int)numFaces);
                CustomData_copy_data(&mesh->pdata, &result->pdata, 0, 
(int)numFaces, (int)numFaces);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to