[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58017] trunk/blender/source/blender/ render/intern/source/convertblender.c: fix [#36005] viewport rendering crashes blender

Campbell Barton ideasman42 at gmail.com
Fri Jul 5 09:53:23 CEST 2013


Revision: 58017
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58017
Author:   campbellbarton
Date:     2013-07-05 07:53:22 +0000 (Fri, 05 Jul 2013)
Log Message:
-----------
fix [#36005] viewport rendering crashes blender

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

Modified: trunk/blender/source/blender/render/intern/source/convertblender.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/convertblender.c	2013-07-05 07:12:12 UTC (rev 58016)
+++ trunk/blender/source/blender/render/intern/source/convertblender.c	2013-07-05 07:53:22 UTC (rev 58017)
@@ -4149,10 +4149,15 @@
 
 void init_render_world(Render *re)
 {
+	void *wrld_prev[2] = {
+	    re->wrld.aotables,
+	    re->wrld.aosphere,
+	};
+
 	int a;
 	
 	if (re->scene && re->scene->world) {
-		re->wrld= *(re->scene->world);
+		re->wrld = *(re->scene->world);
 
 		copy_v3_v3(re->grvec, re->viewmat[2]);
 		normalize_v3(re->grvec);
@@ -4181,6 +4186,10 @@
 	
 	re->wrld.linfac= 1.0f + powf((2.0f*re->wrld.exp + 0.5f), -10);
 	re->wrld.logfac= logf((re->wrld.linfac-1.0f)/re->wrld.linfac) / re->wrld.range;
+
+	/* restore runtime vars, needed for viewport rendering [#36005] */
+	re->wrld.aotables = wrld_prev[0];
+	re->wrld.aosphere = wrld_prev[1];
 }
 
 




More information about the Bf-blender-cvs mailing list