[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [51649] trunk/blender/intern/cycles: Fix #32972: cycles crash switching OSL to SVM in viewport render.

Brecht Van Lommel brechtvanlommel at pandora.be
Fri Oct 26 11:25:04 CEST 2012


Revision: 51649
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=51649
Author:   blendix
Date:     2012-10-26 09:25:02 +0000 (Fri, 26 Oct 2012)
Log Message:
-----------
Fix #32972: cycles crash switching OSL to SVM in viewport render.

Modified Paths:
--------------
    trunk/blender/intern/cycles/blender/blender_sync.cpp
    trunk/blender/intern/cycles/render/session.h

Modified: trunk/blender/intern/cycles/blender/blender_sync.cpp
===================================================================
--- trunk/blender/intern/cycles/blender/blender_sync.cpp	2012-10-26 09:13:26 UTC (rev 51648)
+++ trunk/blender/intern/cycles/blender/blender_sync.cpp	2012-10-26 09:25:02 UTC (rev 51649)
@@ -397,7 +397,15 @@
 	}
 	else
 		params.progressive = true;
-	
+
+	/* shading system - scene level needs full refresh */
+	int shadingsystem = RNA_enum_get(&cscene, "shading_system");
+
+	if(shadingsystem == 0)
+		params.shadingsystem = SessionParams::SVM;
+	else if(shadingsystem == 1)
+		params.shadingsystem = SessionParams::OSL;
+
 	return params;
 }
 

Modified: trunk/blender/intern/cycles/render/session.h
===================================================================
--- trunk/blender/intern/cycles/render/session.h	2012-10-26 09:13:26 UTC (rev 51648)
+++ trunk/blender/intern/cycles/render/session.h	2012-10-26 09:25:02 UTC (rev 51649)
@@ -57,6 +57,8 @@
 	double reset_timeout;
 	double text_timeout;
 
+	enum { OSL, SVM } shadingsystem;
+
 	SessionParams()
 	{
 		background = false;
@@ -73,6 +75,8 @@
 		cancel_timeout = 0.1;
 		reset_timeout = 0.1;
 		text_timeout = 1.0;
+
+		shadingsystem = SVM;
 	}
 
 	bool modified(const SessionParams& params)
@@ -89,7 +93,8 @@
 		&& threads == params.threads
 		&& cancel_timeout == params.cancel_timeout
 		&& reset_timeout == params.reset_timeout
-		&& text_timeout == params.text_timeout); }
+		&& text_timeout == params.text_timeout
+		&& shadingsystem == params.shadingsystem); }
 
 };
 




More information about the Bf-blender-cvs mailing list