diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2019-05-17 14:59:59 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2019-05-17 15:27:13 +0300 |
commit | 34d67601b716046cf15f3e808a92bc91d0af804f (patch) | |
tree | a6875fadf1c129513a889cba61c6627d1a76e45b /source/blender/makesrna/intern/rna_armature.c | |
parent | 8b5816e76bbf18246a5e28ec64a8e4c035f15e7a (diff) |
Python: Raise an error even NO_MAIN data is assigned to object
The goal is to prevent assignment of temporary or evaluated meshes
to objects from the main database.
Majority of the change is actually related on passing reports around.
On a positive side there are more error prints which can become more
visible to scripters.
There are still possible further improvements in the related areas.
For example, disable user counting for evaluated ID datablocks when
assignment happens. But can also happen later on as a separate
improvement.
Reviewers: brecht, campbellbarton, mont29
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D4884
Diffstat (limited to 'source/blender/makesrna/intern/rna_armature.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_armature.c | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/source/blender/makesrna/intern/rna_armature.c b/source/blender/makesrna/intern/rna_armature.c index 0eec5973ab0..3aef22f5f7f 100644 --- a/source/blender/makesrna/intern/rna_armature.c +++ b/source/blender/makesrna/intern/rna_armature.c @@ -67,7 +67,9 @@ static void rna_Armature_dependency_update(Main *bmain, Scene *UNUSED(scene), Po WM_main_add_notifier(NC_GEOM | ND_DATA, id); } -static void rna_Armature_act_bone_set(PointerRNA *ptr, PointerRNA value) +static void rna_Armature_act_bone_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { bArmature *arm = (bArmature *)ptr->data; @@ -89,7 +91,9 @@ static void rna_Armature_act_bone_set(PointerRNA *ptr, PointerRNA value) } } -static void rna_Armature_act_edit_bone_set(PointerRNA *ptr, PointerRNA value) +static void rna_Armature_act_edit_bone_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { bArmature *arm = (bArmature *)ptr->data; @@ -395,7 +399,9 @@ static PointerRNA rna_EditBone_parent_get(PointerRNA *ptr) return rna_pointer_inherit_refine(ptr, &RNA_EditBone, data->parent); } -static void rna_EditBone_parent_set(PointerRNA *ptr, PointerRNA value) +static void rna_EditBone_parent_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { EditBone *ebone = (EditBone *)(ptr->data); EditBone *pbone, *parbone = (EditBone *)value.data; @@ -463,7 +469,9 @@ static PointerRNA rna_EditBone_bbone_prev_get(PointerRNA *ptr) return rna_pointer_inherit_refine(ptr, &RNA_EditBone, data->bbone_prev); } -static void rna_EditBone_bbone_prev_set(PointerRNA *ptr, PointerRNA value) +static void rna_EditBone_bbone_prev_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { EditBone *ebone = (EditBone *)(ptr->data); EditBone *hbone = (EditBone *)value.data; @@ -474,7 +482,9 @@ static void rna_EditBone_bbone_prev_set(PointerRNA *ptr, PointerRNA value) } } -static void rna_Bone_bbone_prev_set(PointerRNA *ptr, PointerRNA value) +static void rna_Bone_bbone_prev_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { Bone *bone = (Bone *)ptr->data; Bone *hbone = (Bone *)value.data; @@ -491,7 +501,9 @@ static PointerRNA rna_EditBone_bbone_next_get(PointerRNA *ptr) return rna_pointer_inherit_refine(ptr, &RNA_EditBone, data->bbone_next); } -static void rna_EditBone_bbone_next_set(PointerRNA *ptr, PointerRNA value) +static void rna_EditBone_bbone_next_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { EditBone *ebone = (EditBone *)(ptr->data); EditBone *hbone = (EditBone *)value.data; @@ -502,7 +514,9 @@ static void rna_EditBone_bbone_next_set(PointerRNA *ptr, PointerRNA value) } } -static void rna_Bone_bbone_next_set(PointerRNA *ptr, PointerRNA value) +static void rna_Bone_bbone_next_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { Bone *bone = (Bone *)ptr->data; Bone *hbone = (Bone *)value.data; |