Commit: 1555cf758f401fbc1d3a4aba0029b4298a2c5001
Author: Sergey Sharybin
Date:   Thu Nov 2 17:58:11 2017 +0100
Branches: blender2.8
https://developer.blender.org/rB1555cf758f401fbc1d3a4aba0029b4298a2c5001

Freestyle: Fix access freed memory when freeing fresstyle bmain

Some of the uninitializaiton code was leaving bases pointing freed memory.

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

M       
source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp

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

diff --git 
a/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp 
b/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
index 6d5d23c4d47..354d796f2e0 100644
--- 
a/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
+++ 
b/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
@@ -194,6 +194,15 @@ BlenderStrokeRenderer::~BlenderStrokeRenderer()
                }
        }
 
+       // Make sure we don't have any bases which might reference freed 
objects.
+       FOREACH_SCENE_COLLECTION(freestyle_scene, sc)
+       {
+               BLI_freelistN(&sc->objects);
+       }
+       FOREACH_SCENE_COLLECTION_END
+       BLI_freelistN(&scene_layer->object_bases);
+       BLI_freelistN(&freestyle_scene->base);
+
        // release materials
        Link *lnk = (Link *)freestyle_bmain->mat.first;

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

Reply via email to