[Bf-blender-cvs] [ca476a638c8] blender-v2.92-release: RNA: report an error when the name property is set twice

Campbell Barton noreply at git.blender.org
Sun Jan 17 08:27:55 CET 2021


Commit: ca476a638c89634c17a025eff184a81e92d13f50
Author: Campbell Barton
Date:   Sun Jan 17 18:21:27 2021 +1100
Branches: blender-v2.92-release
https://developer.blender.org/rBca476a638c89634c17a025eff184a81e92d13f50

RNA: report an error when the name property is set twice

This helps avoid copy-paste errors which have happened a few times,
no functional changes.

===================================================================

M	source/blender/makesrna/intern/rna_attribute.c
M	source/blender/makesrna/intern/rna_define.c
M	source/blender/makesrna/intern/rna_render.c

===================================================================

diff --git a/source/blender/makesrna/intern/rna_attribute.c b/source/blender/makesrna/intern/rna_attribute.c
index 0d973e8e94e..7cd6e375a82 100644
--- a/source/blender/makesrna/intern/rna_attribute.c
+++ b/source/blender/makesrna/intern/rna_attribute.c
@@ -566,7 +566,6 @@ static void rna_def_attribute(BlenderRNA *brna)
   RNA_def_struct_path_func(srna, "rna_Attribute_path");
 
   prop = RNA_def_property(srna, "name", PROP_STRING, PROP_NONE);
-  RNA_def_struct_name_property(srna, prop);
   RNA_def_property_string_funcs(prop, NULL, NULL, "rna_Attribute_name_set");
   RNA_def_property_editable_func(prop, "rna_Attribute_name_editable");
   RNA_def_property_ui_text(prop, "Name", "Name of the Attribute");
diff --git a/source/blender/makesrna/intern/rna_define.c b/source/blender/makesrna/intern/rna_define.c
index 44045dc5d2c..cec6a50d170 100644
--- a/source/blender/makesrna/intern/rna_define.c
+++ b/source/blender/makesrna/intern/rna_define.c
@@ -1125,6 +1125,11 @@ void RNA_def_struct_name_property(struct StructRNA *srna, struct PropertyRNA *pr
     CLOG_ERROR(&LOG, "\"%s.%s\", must be a string property.", srna->identifier, prop->identifier);
     DefRNA.error = true;
   }
+  else if (srna->nameproperty != NULL) {
+    CLOG_ERROR(
+        &LOG, "\"%s.%s\", name property is already set.", srna->identifier, prop->identifier);
+    DefRNA.error = true;
+  }
   else {
     srna->nameproperty = prop;
   }
diff --git a/source/blender/makesrna/intern/rna_render.c b/source/blender/makesrna/intern/rna_render.c
index 93459b63492..3126f3e11f4 100644
--- a/source/blender/makesrna/intern/rna_render.c
+++ b/source/blender/makesrna/intern/rna_render.c
@@ -1081,7 +1081,6 @@ static void rna_def_render_pass(BlenderRNA *brna)
   prop = RNA_def_property(srna, "fullname", PROP_STRING, PROP_NONE);
   RNA_def_property_string_sdna(prop, NULL, "fullname");
   RNA_def_property_clear_flag(prop, PROP_EDITABLE);
-  RNA_def_struct_name_property(srna, prop);
 
   prop = RNA_def_property(srna, "name", PROP_STRING, PROP_NONE);
   RNA_def_property_string_sdna(prop, NULL, "name");



More information about the Bf-blender-cvs mailing list