[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52045] trunk/blender/source/blender/ editors/space_buttons/buttons_context.c: Fix #30505: bpy.context.copy() gives error running in the properties editor

Brecht Van Lommel brechtvanlommel at pandora.be
Fri Nov 9 18:12:40 CET 2012


Revision: 52045
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52045
Author:   blendix
Date:     2012-11-09 17:12:39 +0000 (Fri, 09 Nov 2012)
Log Message:
-----------
Fix #30505: bpy.context.copy() gives error running in the properties editor
with cycles as render engine.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_buttons/buttons_context.c

Modified: trunk/blender/source/blender/editors/space_buttons/buttons_context.c
===================================================================
--- trunk/blender/source/blender/editors/space_buttons/buttons_context.c	2012-11-09 16:49:17 UTC (rev 52044)
+++ trunk/blender/source/blender/editors/space_buttons/buttons_context.c	2012-11-09 17:12:39 UTC (rev 52045)
@@ -680,9 +680,9 @@
 /************************* Context Callback ************************/
 
 const char *buttons_context_dir[] = {
-	"world", "object", "mesh", "armature", "lattice", "curve",
+	"texture_slot", "world", "object", "mesh", "armature", "lattice", "curve",
 	"meta_ball", "lamp", "speaker", "camera", "material", "material_slot",
-	"texture", "texture_slot", "texture_user", "bone", "edit_bone",
+	"texture", "texture_user", "bone", "edit_bone",
 	"pose_bone", "particle_system", "particle_system_editable", "particle_settings",
 	"cloth", "soft_body", "fluid", "smoke", "collision", "brush", "dynamic_paint", NULL
 };
@@ -697,7 +697,12 @@
 
 	/* here we handle context, getting data from precomputed path */
 	if (CTX_data_dir(member)) {
-		CTX_data_dir_set(result, buttons_context_dir);
+		/* in case of new shading system we skip texture_slot, complex python
+		 * UI script logic depends on checking if this is available */
+		if (sbuts->texuser)
+			CTX_data_dir_set(result, buttons_context_dir + 1);
+		else
+			CTX_data_dir_set(result, buttons_context_dir);
 		return 1;
 	}
 	else if (CTX_data_equals(member, "world")) {




More information about the Bf-blender-cvs mailing list