[Bf-blender-cvs] [1555cf758f4] blender2.8: Freestyle: Fix access freed memory when freeing fresstyle bmain
Sergey Sharybin
noreply at git.blender.org
Thu Nov 2 18:02:35 CET 2017
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;
More information about the Bf-blender-cvs
mailing list