RNA: existing type check used wrong identifier

Own error in recent type checks, in many cases the 'idname'
is used for the struct identifier, not the 'identifier'
which is the Python class name in this context.
This commit is contained in:
Campbell Barton 2017-08-31 18:42:48 +10:00
parent 4f1b510d75
commit 732f70a151
5 changed files with 20 additions and 18 deletions

@ -273,7 +273,7 @@ static StructRNA *rna_KeyingSetInfo_register(Main *bmain, ReportList *reports, v
if (ksi && ksi->ext.srna) {
rna_KeyingSetInfo_unregister(bmain, ksi->ext.srna);
}
if (!RNA_struct_available_or_report(reports, identifier)) {
if (!RNA_struct_available_or_report(reports, dummyksi.idname)) {
return NULL;
}

@ -633,7 +633,7 @@ static StructRNA *rna_NodeTree_register(
if (nt) {
rna_NodeTree_unregister(bmain, nt->ext.srna);
}
if (!RNA_struct_available_or_report(reports, identifier)) {
if (!RNA_struct_available_or_report(reports, dummynt.idname)) {
return NULL;
}
@ -1393,16 +1393,13 @@ static bNodeType *rna_Node_register_base(Main *bmain, ReportList *reports, Struc
identifier, (int)sizeof(dummynt.idname));
return NULL;
}
if (!RNA_struct_available_or_report(reports, identifier)) {
return NULL;
}
/* check if we have registered this node type before, and remove it */
nt = nodeTypeFind(dummynt.idname);
if (nt) {
rna_Node_unregister(bmain, nt->ext.srna);
}
if (!RNA_struct_available_or_report(reports, identifier)) {
if (!RNA_struct_available_or_report(reports, dummynt.idname)) {
return NULL;
}

@ -321,7 +321,7 @@ static StructRNA *rna_RenderEngine_register(Main *bmain, ReportList *reports, vo
break;
}
}
if (!RNA_struct_available_or_report(reports, identifier)) {
if (!RNA_struct_available_or_report(reports, dummyet.idname)) {
return NULL;
}

@ -229,7 +229,7 @@ static StructRNA *rna_Panel_register(Main *bmain, ReportList *reports, void *dat
break;
}
}
if (!RNA_struct_available_or_report(reports, identifier)) {
if (!RNA_struct_available_or_report(reports, dummypt.idname)) {
return NULL;
}
@ -494,7 +494,7 @@ static StructRNA *rna_UIList_register(Main *bmain, ReportList *reports, void *da
if (ult && ult->ext.srna) {
rna_UIList_unregister(bmain, ult->ext.srna);
}
if (!RNA_struct_available_or_report(reports, identifier)) {
if (!RNA_struct_available_or_report(reports, dummyult.idname)) {
return NULL;
}
@ -599,7 +599,7 @@ static StructRNA *rna_Header_register(Main *bmain, ReportList *reports, void *da
break;
}
}
if (!RNA_struct_available_or_report(reports, identifier)) {
if (!RNA_struct_available_or_report(reports, dummyht.idname)) {
return NULL;
}
@ -725,7 +725,7 @@ static StructRNA *rna_Menu_register(Main *bmain, ReportList *reports, void *data
if (mt && mt->ext.srna) {
rna_Menu_unregister(bmain, mt->ext.srna);
}
if (!RNA_struct_available_or_report(reports, identifier)) {
if (!RNA_struct_available_or_report(reports, dummymt.idname)) {
return NULL;
}

@ -1157,15 +1157,17 @@ static StructRNA *rna_Operator_register(
if (!RNA_struct_available_or_report(reports, identifier)) {
return NULL;
}
if (!WM_operator_py_idname_ok_or_report(reports, identifier, temp_buffers.idname)) {
char idname_conv[sizeof(dummyop.idname)];
WM_operator_bl_idname(idname_conv, temp_buffers.idname); /* convert the idname from python */
if (!WM_operator_py_idname_ok_or_report(reports, idname_conv, temp_buffers.idname)) {
return NULL;
}
/* Convert foo.bar to FOO_OT_bar
* allocate all strings at once. */
{
char idname_conv[sizeof(dummyop.idname)];
WM_operator_bl_idname(idname_conv, temp_buffers.idname); /* convert the idname from python */
const char *strings[] = {
idname_conv,
temp_buffers.name,
@ -1292,18 +1294,21 @@ static StructRNA *rna_MacroOperator_register(
if (ot && ot->ext.srna)
rna_Operator_unregister(bmain, ot->ext.srna);
}
if (!RNA_struct_available_or_report(reports, identifier)) {
if (!WM_operator_py_idname_ok_or_report(reports, identifier, temp_buffers.idname)) {
return NULL;
}
if (!WM_operator_py_idname_ok_or_report(reports, identifier, temp_buffers.idname)) {
char idname_conv[sizeof(dummyop.idname)];
WM_operator_bl_idname(idname_conv, temp_buffers.idname); /* convert the idname from python */
if (!RNA_struct_available_or_report(reports, idname_conv)) {
return NULL;
}
/* Convert foo.bar to FOO_OT_bar
* allocate all strings at once. */
{
char idname_conv[sizeof(dummyop.idname)];
WM_operator_bl_idname(idname_conv, temp_buffers.idname); /* convert the idname from python */
const char *strings[] = {
idname_conv,
temp_buffers.name,