From 34d67601b716046cf15f3e808a92bc91d0af804f Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Fri, 17 May 2019 13:59:59 +0200 Subject: 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 --- source/blender/makesrna/intern/rna_mask.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'source/blender/makesrna/intern/rna_mask.c') diff --git a/source/blender/makesrna/intern/rna_mask.c b/source/blender/makesrna/intern/rna_mask.c index 8b27c69604e..563372dd4cf 100644 --- a/source/blender/makesrna/intern/rna_mask.c +++ b/source/blender/makesrna/intern/rna_mask.c @@ -116,7 +116,9 @@ static void rna_Mask_update_parent(Main *bmain, Scene *scene, PointerRNA *ptr) } /* note: this function exists only to avoid id refcounting */ -static void rna_MaskParent_id_set(PointerRNA *ptr, PointerRNA value) +static void rna_MaskParent_id_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { MaskParent *mpar = (MaskParent *)ptr->data; @@ -191,7 +193,9 @@ static PointerRNA rna_Mask_layer_active_get(PointerRNA *ptr) return rna_pointer_inherit_refine(ptr, &RNA_MaskLayer, masklay); } -static void rna_Mask_layer_active_set(PointerRNA *ptr, PointerRNA value) +static void rna_Mask_layer_active_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { Mask *mask = (Mask *)ptr->id.data; MaskLayer *masklay = (MaskLayer *)value.data; @@ -226,7 +230,9 @@ static PointerRNA rna_MaskLayer_active_spline_get(PointerRNA *ptr) return rna_pointer_inherit_refine(ptr, &RNA_MaskSpline, masklay->act_spline); } -static void rna_MaskLayer_active_spline_set(PointerRNA *ptr, PointerRNA value) +static void rna_MaskLayer_active_spline_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { MaskLayer *masklay = (MaskLayer *)ptr->data; MaskSpline *spline = (MaskSpline *)value.data; @@ -245,7 +251,9 @@ static PointerRNA rna_MaskLayer_active_spline_point_get(PointerRNA *ptr) return rna_pointer_inherit_refine(ptr, &RNA_MaskSplinePoint, masklay->act_point); } -static void rna_MaskLayer_active_spline_point_set(PointerRNA *ptr, PointerRNA value) +static void rna_MaskLayer_active_spline_point_set(struct ReportList *UNUSED(reports), + PointerRNA *ptr, + PointerRNA value) { MaskLayer *masklay = (MaskLayer *)ptr->data; MaskSpline *spline; -- cgit v1.2.3