[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58063] trunk/blender/source/blender/ render/intern/source/pipeline.c: Fix for Bug #35970: Freestyle + Particles = Crash.

Tamito Kajiyama rd6t-kjym at asahi-net.or.jp
Sun Jul 7 19:24:31 CEST 2013


Revision: 58063
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58063
Author:   kjym3
Date:     2013-07-07 17:24:30 +0000 (Sun, 07 Jul 2013)
Log Message:
-----------
Fix for Bug #35970: Freestyle + Particles = Crash.

The crash was caused by a reference of freed memory in add_halo_flare() that relied
on the global variable R to retrieve a list of objects.  The value of this variable
is invalidated by a nested execution of the Blender Internal renderer for Freestyle
stroke rendering, leading to the documented memory reference issue.

Modified Paths:
--------------
    trunk/blender/source/blender/render/intern/source/pipeline.c

Modified: trunk/blender/source/blender/render/intern/source/pipeline.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/pipeline.c	2013-07-07 16:13:36 UTC (rev 58062)
+++ trunk/blender/source/blender/render/intern/source/pipeline.c	2013-07-07 17:24:30 UTC (rev 58063)
@@ -1676,6 +1676,9 @@
 	}
 
 	FRS_finish_stroke_rendering(re);
+
+	/* restore the global R value (invalidated by nested execution of the internal renderer) */
+	R = *re;
 }
 
 /* merges the results of Freestyle stroke rendering into a given render result */




More information about the Bf-blender-cvs mailing list