diff --git a/source/blender/makesrna/intern/rna_animation.cc b/source/blender/makesrna/intern/rna_animation.cc index 2f3394986ad..c428390a702 100644 --- a/source/blender/makesrna/intern/rna_animation.cc +++ b/source/blender/makesrna/intern/rna_animation.cc @@ -325,6 +325,13 @@ static StructRNA *rna_KeyingSetInfo_register(Main *bmain, /* check if we have registered this info before, and remove it */ ksi = ANIM_keyingset_info_find_name(dummy_ksi.idname); if (ksi) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_ksi.idname); + StructRNA *srna = ksi->rna_ext.srna; if (!(srna && rna_KeyingSetInfo_unregister(bmain, srna))) { BKE_reportf(reports, diff --git a/source/blender/makesrna/intern/rna_nodetree.cc b/source/blender/makesrna/intern/rna_nodetree.cc index 4d986072a57..25fa4f54020 100644 --- a/source/blender/makesrna/intern/rna_nodetree.cc +++ b/source/blender/makesrna/intern/rna_nodetree.cc @@ -991,6 +991,13 @@ static StructRNA *rna_NodeTree_register(Main *bmain, /* check if we have registered this tree type before, and remove it */ nt = ntreeTypeFind(dummy_nt.idname); if (nt) { + BKE_reportf(reports, + RPT_INFO, + "Registering node tree class: '%s', bl_idname '%s' has been registered before, " + "unregistering previous", + identifier, + dummy_nt.idname); + /* NOTE: unlike most types `nt->rna_ext.srna` doesn't need to be checked for nullptr. */ if (!rna_NodeTree_unregister(bmain, nt->rna_ext.srna)) { BKE_reportf(reports, @@ -1663,6 +1670,13 @@ static bNodeType *rna_Node_register_base(Main *bmain, return nullptr; } + BKE_reportf(reports, + RPT_INFO, + "Registering node class: '%s', bl_idname '%s' has been registered before, " + "unregistering previous", + identifier, + dummy_nt.idname); + /* NOTE: unlike most types `nt->rna_ext.srna` doesn't need to be checked for nullptr. */ if (!rna_Node_unregister(bmain, nt->rna_ext.srna)) { BKE_reportf(reports, diff --git a/source/blender/makesrna/intern/rna_render.cc b/source/blender/makesrna/intern/rna_render.cc index 02270519731..6fca1dcaa91 100644 --- a/source/blender/makesrna/intern/rna_render.cc +++ b/source/blender/makesrna/intern/rna_render.cc @@ -348,6 +348,13 @@ static StructRNA *rna_RenderEngine_register(Main *bmain, et = static_cast( BLI_findstring(&R_engines, dummy_et.idname, offsetof(RenderEngineType, idname))); if (et) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_et.idname); + StructRNA *srna = et->rna_ext.srna; if (!(srna && rna_RenderEngine_unregister(bmain, srna))) { BKE_reportf(reports, diff --git a/source/blender/makesrna/intern/rna_ui.cc b/source/blender/makesrna/intern/rna_ui.cc index 06db0f3e668..46a159aee75 100644 --- a/source/blender/makesrna/intern/rna_ui.cc +++ b/source/blender/makesrna/intern/rna_ui.cc @@ -315,6 +315,12 @@ static StructRNA *rna_Panel_register(Main *bmain, PanelType *pt_next = pt->next; StructRNA *srna = pt->rna_ext.srna; if (srna) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_pt.idname); if (!rna_Panel_unregister(bmain, srna)) { BKE_reportf(reports, RPT_ERROR, @@ -721,6 +727,13 @@ static StructRNA *rna_UIList_register(Main *bmain, /* Check if we have registered this UI-list type before, and remove it. */ ult = WM_uilisttype_find(dummy_ult.idname, true); if (ult) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_ult.idname); + StructRNA *srna = ult->rna_ext.srna; if (!(srna && rna_UIList_unregister(bmain, srna))) { BKE_reportf(reports, @@ -852,6 +865,13 @@ static StructRNA *rna_Header_register(Main *bmain, ht = static_cast( BLI_findstring(&art->headertypes, dummy_ht.idname, offsetof(HeaderType, idname))); if (ht) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_ht.idname); + StructRNA *srna = ht->rna_ext.srna; if (!(srna && rna_Header_unregister(bmain, srna))) { BKE_reportf(reports, @@ -1002,6 +1022,13 @@ static StructRNA *rna_Menu_register(Main *bmain, /* check if we have registered this menu type before, and remove it */ mt = WM_menutype_find(dummy_mt.idname, true); if (mt) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_mt.idname); + StructRNA *srna = mt->rna_ext.srna; if (!(srna && rna_Menu_unregister(bmain, srna))) { BKE_reportf(reports, @@ -1207,6 +1234,12 @@ static StructRNA *rna_AssetShelf_register(Main *bmain, LISTBASE_FOREACH (AssetShelfType *, iter_shelf_type, &space_type->asset_shelf_types) { if (STREQ(iter_shelf_type->idname, dummy_shelf_type.idname)) { if (iter_shelf_type->rna_ext.srna) { + BKE_reportf(reports, + RPT_INFO, + "Registering asset shelf class: '%s' has been registered before, " + "unregistering previous", + dummy_shelf_type.idname); + rna_AssetShelf_unregister(bmain, iter_shelf_type->rna_ext.srna); } break; diff --git a/source/blender/makesrna/intern/rna_usd.cc b/source/blender/makesrna/intern/rna_usd.cc index 20f76dec39c..7bd1724bfb8 100644 --- a/source/blender/makesrna/intern/rna_usd.cc +++ b/source/blender/makesrna/intern/rna_usd.cc @@ -82,6 +82,13 @@ static StructRNA *rna_USDHook_register(Main *bmain, /* check if we have registered this hook before, and remove it */ hook = USD_find_hook_name(dummy_hook.idname); if (hook) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_hook.idname); + StructRNA *srna = hook->rna_ext.srna; if (!rna_USDHook_unregister(bmain, srna)) { BKE_reportf(reports, diff --git a/source/blender/makesrna/intern/rna_userdef.cc b/source/blender/makesrna/intern/rna_userdef.cc index 5f6eff8aa5d..5c511cb3bda 100644 --- a/source/blender/makesrna/intern/rna_userdef.cc +++ b/source/blender/makesrna/intern/rna_userdef.cc @@ -1022,6 +1022,13 @@ static StructRNA *rna_AddonPref_register(Main *bmain, /* Check if we have registered this add-on preference type before, and remove it. */ apt = BKE_addon_pref_type_find(dummy_addon.module, true); if (apt) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_apt.idname); + StructRNA *srna = apt->rna_ext.srna; if (!(srna && rna_AddonPref_unregister(bmain, srna))) { BKE_reportf(reports, diff --git a/source/blender/makesrna/intern/rna_wm.cc b/source/blender/makesrna/intern/rna_wm.cc index 1440b90badd..cc13f5bd3f0 100644 --- a/source/blender/makesrna/intern/rna_wm.cc +++ b/source/blender/makesrna/intern/rna_wm.cc @@ -1185,6 +1185,13 @@ static StructRNA *rna_wmKeyConfigPref_register(Main *bmain, /* check if we have registered this keyconf-prefs type before, and remove it */ kpt_rt = BKE_keyconfig_pref_type_find(dummy_kpt.idname, true); if (kpt_rt) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_kpt.idname); + StructRNA *srna = kpt_rt->rna_ext.srna; if (!(srna && rna_wmKeyConfigPref_unregister(bmain, srna))) { BKE_reportf(reports, @@ -1530,6 +1537,13 @@ static StructRNA *rna_Operator_register(Main *bmain, { wmOperatorType *ot = WM_operatortype_find(dummy_ot.idname, true); if (ot) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_ot.idname); + StructRNA *srna = ot->rna_ext.srna; if (!(srna && rna_Operator_unregister(bmain, srna))) { BKE_reportf(reports, @@ -1700,6 +1714,13 @@ static StructRNA *rna_MacroOperator_register(Main *bmain, { wmOperatorType *ot = WM_operatortype_find(dummy_ot.idname, true); if (ot) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_ot.idname); + StructRNA *srna = ot->rna_ext.srna; if (!(srna && rna_Operator_unregister(bmain, srna))) { BKE_reportf(reports, diff --git a/source/blender/makesrna/intern/rna_wm_gizmo.cc b/source/blender/makesrna/intern/rna_wm_gizmo.cc index 18c61fa8519..96d3ebb2b05 100644 --- a/source/blender/makesrna/intern/rna_wm_gizmo.cc +++ b/source/blender/makesrna/intern/rna_wm_gizmo.cc @@ -460,6 +460,13 @@ static StructRNA *rna_Gizmo_register(Main *bmain, { const wmGizmoType *gzt = WM_gizmotype_find(dummy_gt.idname, true); if (gzt) { + BKE_reportf(reports, + RPT_INFO, + "%s '%s', bl_idname '%s' has been registered before, unregistering previous", + error_prefix, + identifier, + dummy_gt.idname); + StructRNA *srna = gzt->rna_ext.srna; if (!(srna && rna_Gizmo_unregister(bmain, srna))) { BKE_reportf(reports,