[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52979] trunk/blender/source/blender/ makesrna/intern/rna_scene.c: Fix for using active scene instead of actually changed one in some RNA callbacks

Sergey Sharybin sergey.vfx at gmail.com
Thu Dec 13 18:12:01 CET 2012


Revision: 52979
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52979
Author:   nazgul
Date:     2012-12-13 17:12:00 +0000 (Thu, 13 Dec 2012)
Log Message:
-----------
Fix for using active scene instead of actually changed one in some RNA callbacks

Modified Paths:
--------------
    trunk/blender/source/blender/makesrna/intern/rna_scene.c

Modified: trunk/blender/source/blender/makesrna/intern/rna_scene.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_scene.c	2012-12-13 16:55:54 UTC (rev 52978)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c	2012-12-13 17:12:00 UTC (rev 52979)
@@ -1247,27 +1247,32 @@
 	}
 }
 
-static void rna_Scene_use_simplify_update(Main *bmain, Scene *scene, PointerRNA *UNUSED(ptr))
+static void rna_Scene_use_simplify_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *ptr)
 {
+	Scene *sce = ptr->id.data;
 	Scene *sce_iter;
 	Base *base;
 
-	for (SETLOOPER(scene, sce_iter, base))
+	for (SETLOOPER(sce, sce_iter, base))
 		object_simplify_update(base->object);
 	
 	DAG_ids_flush_update(bmain, 0);
 	WM_main_add_notifier(NC_GEOM | ND_DATA, NULL);
 }
 
-static void rna_Scene_simplify_update(Main *bmain, Scene *scene, PointerRNA *ptr)
+static void rna_Scene_simplify_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *ptr)
 {
-	if (scene->r.mode & R_SIMPLIFY)
-		rna_Scene_use_simplify_update(bmain, scene, ptr);
+	Scene *sce = ptr->id.data;
+
+	if (sce->r.mode & R_SIMPLIFY)
+		rna_Scene_use_simplify_update(bmain, sce, ptr);
 }
 
-static void rna_Scene_use_persistent_data_update(Main *bmain, Scene *scene, PointerRNA *UNUSED(ptr))
+static void rna_Scene_use_persistent_data_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *ptr)
 {
-	if (!(scene->r.mode & R_PERSISTENT_DATA))
+	Scene *sce = ptr->id.data;
+
+	if (!(sce->r.mode & R_PERSISTENT_DATA))
 		RE_FreePersistentData();
 }
 




More information about the Bf-blender-cvs mailing list