[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [56136] trunk/blender/source/blender/ freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp: Fix for access freed scene when doing freestyle render

Sergey Sharybin sergey.vfx at gmail.com
Thu Apr 18 14:11:50 CEST 2013


Revision: 56136
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56136
Author:   nazgul
Date:     2013-04-18 12:11:50 +0000 (Thu, 18 Apr 2013)
Log Message:
-----------
Fix for access freed scene when doing freestyle render

It's more like an ownership thing, but it's not so much
clear who actually is an owner of temporary scene, so
for now just ensure Render does not have link to it
after strokes are rendered.

There're also suspicious thing related on why separate
RE_free_database is needed for freestyle renders, but
that's also another story.

Modified Paths:
--------------
    trunk/blender/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp

Modified: trunk/blender/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
===================================================================
--- trunk/blender/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp	2013-04-18 12:03:27 UTC (rev 56135)
+++ trunk/blender/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp	2013-04-18 12:11:50 UTC (rev 56136)
@@ -516,6 +516,11 @@
 	Render *freestyle_render = RE_NewRender(freestyle_scene->id.name);
 
 	RE_RenderFreestyleStrokes(freestyle_render, &_freestyle_bmain, freestyle_scene);
+
+	// rendering is done, scene would be freed in destructor,
+	// no need to store it's in render structure
+	freestyle_render->scene = NULL;
+
 	return freestyle_render;
 }
 




More information about the Bf-blender-cvs mailing list