[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [39660] trunk/blender/source/blender/ makesrna/intern/rna_scene.c: fix [#28351] active RenderLayer can be set to None, leading to crash

Campbell Barton ideasman42 at gmail.com
Tue Aug 23 22:54:44 CEST 2011


Revision: 39660
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39660
Author:   campbellbarton
Date:     2011-08-23 20:54:44 +0000 (Tue, 23 Aug 2011)
Log Message:
-----------
fix [#28351] active RenderLayer can be set to None, leading to crash

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	2011-08-23 20:49:06 UTC (rev 39659)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c	2011-08-23 20:54:44 UTC (rev 39660)
@@ -700,8 +700,8 @@
 {
 	RenderData *rd= (RenderData*)ptr->data;
 	SceneRenderLayer *srl= (SceneRenderLayer*)value.data;
-	
-	rd->actlay = BLI_findindex(&rd->layers, srl);
+	const int index= BLI_findindex(&rd->layers, srl);
+	if (index != -1) rd->actlay= index;
 }
 
 static void rna_RenderSettings_engine_set(PointerRNA *ptr, int value)
@@ -1973,7 +1973,7 @@
 	prop= RNA_def_property(srna, "active", PROP_POINTER, PROP_UNSIGNED);
 	RNA_def_property_struct_type(prop, "SceneRenderLayer");
 	RNA_def_property_pointer_funcs(prop, "rna_RenderSettings_active_layer_get", "rna_RenderSettings_active_layer_set", NULL, NULL);
-	RNA_def_property_flag(prop, PROP_EDITABLE);
+	RNA_def_property_flag(prop, PROP_EDITABLE|PROP_NEVER_NULL);
 	RNA_def_property_ui_text(prop, "Active Render Layer", "Active Render Layer");
 	RNA_def_property_update(prop, NC_SCENE|ND_RENDER_OPTIONS, NULL);
 




More information about the Bf-blender-cvs mailing list