From 03a4d3c33f824f966675dbb8fe3b4d645dc88f42 Mon Sep 17 00:00:00 2001 From: Julian Eisel Date: Wed, 19 Feb 2020 20:45:58 +0100 Subject: RNA: Fail makesrna if enum identifiers contain spaces We could of course always add checks for more invalid characters, but I'd say they are more unlikely to happen. --- source/blender/makesrna/intern/rna_define.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'source/blender/makesrna/intern/rna_define.c') diff --git a/source/blender/makesrna/intern/rna_define.c b/source/blender/makesrna/intern/rna_define.c index 73a59cbba11..4150daa0f63 100644 --- a/source/blender/makesrna/intern/rna_define.c +++ b/source/blender/makesrna/intern/rna_define.c @@ -1832,8 +1832,18 @@ void RNA_def_property_enum_items(PropertyRNA *prop, const EnumPropertyItem *item for (i = 0; item[i].identifier; i++) { eprop->totitem++; - if (item[i].identifier[0] && item[i].value == eprop->defaultvalue) { - defaultfound = 1; + if (item[i].identifier[0]) { + if (strstr(item[i].identifier, " ")) { + CLOG_ERROR(&LOG, + "\"%s.%s\", enum identifiers must not contain spaces.", + srna->identifier, + prop->identifier); + DefRNA.error = 1; + break; + } + else if (item[i].value == eprop->defaultvalue) { + defaultfound = 1; + } } } -- cgit v1.2.3