diff --git a/release/scripts/ui/properties_data_mesh.py b/release/scripts/ui/properties_data_mesh.py index c0f85685938..b8c5438ea78 100644 --- a/release/scripts/ui/properties_data_mesh.py +++ b/release/scripts/ui/properties_data_mesh.py @@ -150,7 +150,12 @@ class DATA_PT_shape_keys(DataButtonsPanel): ob = context.object key = ob.data.shape_keys - kb = ob.active_shape_key + if key and len(key.keys): + # this is so that we get the active shapekey from the + # shapekeys block, not from object data + kb = key.keys[ob.active_shape_key.name] + else: + kb = None wide_ui = context.region.width > narrowui enable_edit = ob.mode != 'EDIT' diff --git a/source/blender/blenkernel/intern/brush.c b/source/blender/blenkernel/intern/brush.c index ec761c27c64..99cd6975665 100644 --- a/source/blender/blenkernel/intern/brush.c +++ b/source/blender/blenkernel/intern/brush.c @@ -225,7 +225,7 @@ void brush_toggled_fake_user(Brush *brush) } } -void brush_curve_preset(Brush *b, CurveMappingPreset preset) +void brush_curve_preset(Brush *b, /*CurveMappingPreset*/int preset) { CurveMap *cm = NULL; diff --git a/source/blender/makesrna/intern/rna_key.c b/source/blender/makesrna/intern/rna_key.c index 9e560a50af0..6ff961070b9 100644 --- a/source/blender/makesrna/intern/rna_key.c +++ b/source/blender/makesrna/intern/rna_key.c @@ -283,7 +283,13 @@ static PointerRNA rna_ShapeKey_data_get(CollectionPropertyIterator *iter) static char *rna_ShapeKey_path(PointerRNA *ptr) { - return BLI_sprintfN("keys[\"%s\"]", ((KeyBlock*)ptr->data)->name); + KeyBlock *kb= (KeyBlock *)ptr->data; + ID *id= ptr->id.data; + + if ((id) && (GS(id->name) != ID_KE)) + return BLI_sprintfN("shape_keys.keys[\"%s\"]", kb->name); + else + return BLI_sprintfN("keys[\"%s\"]", kb->name); } static void rna_Key_update_data(Main *bmain, Scene *scene, PointerRNA *ptr)