[Bf-blender-cvs] [64d3ae1] bake-cycles: Cycles-Bake: prevent crash when closing Blender

Dalai Felinto noreply at git.blender.org
Wed Apr 23 02:47:40 CEST 2014


Commit: 64d3ae111443fccc059dd1cbb4202c5eb9024fa8
Author: Dalai Felinto
Date:   Mon Mar 24 16:59:01 2014 -0300
https://developer.blender.org/rB64d3ae111443fccc059dd1cbb4202c5eb9024fa8

Cycles-Bake: prevent crash when closing Blender

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

M	source/blender/render/intern/source/external_engine.c

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

diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c
index 80a3190..cb6a396 100644
--- a/source/blender/render/intern/source/external_engine.c
+++ b/source/blender/render/intern/source/external_engine.c
@@ -409,6 +409,11 @@ void RE_engine_bake_set_engine_parameters(Render *re, Main *bmain, Scene *scene)
 	re->scene = scene;
 	re->main = bmain;
 	re->r = scene->r;
+
+	/* prevent crash when freeing the scene
+	 but it potentially leaves unfreed memory blocks
+	 not sure how to fix this yet -- dfelinto */
+	re->r.layers.first = re->r.layers.last = NULL;
 }
 
 bool RE_engine_has_bake(Render *re)
@@ -465,6 +470,8 @@ bool RE_engine_bake(Render *re, Object *object, BakePixel pixel_array[], int num
 		re->engine = NULL;
 	}
 
+	RE_parts_free(re);
+
 	if (BKE_reports_contain(re->reports, RPT_ERROR))
 		G.is_break = TRUE;




More information about the Bf-blender-cvs mailing list