Fix T101306: crash when calling Delete command for Library Override

Was not passing user_data to id_override_library_delete_hierarchy_fn.

Also correct a wrong assert.

Greenlit by @mont29 in T101306.
Should also go into 3.3 LTS.
This commit is contained in:
Philipp Oeser
2022-10-05 12:45:21 +02:00
parent 6d879601b7
commit cfa765845b

View File

@@ -1229,7 +1229,7 @@ static void id_override_library_create_hierarchy(
/* Remove the instance empty from this scene, the items now have an overridden collection
* instead. */
if (success && data_idroot.is_override_instancing_object) {
BLI_assert(GS(data_idroot.id_instance_hint) == ID_OB);
BLI_assert(GS(data_idroot.id_instance_hint->name) == ID_OB);
ED_object_base_free_and_unlink(
&bmain, scene, reinterpret_cast<Object *>(data_idroot.id_instance_hint));
}
@@ -1815,7 +1815,7 @@ static int outliner_liboverride_operation_exec(bContext *C, wmOperator *op)
space_outliner,
id_override_library_delete_hierarchy_fn,
OUTLINER_LIB_SELECTIONSET_SELECTED,
nullptr);
&override_data);
id_override_library_delete_hierarchy_process(C, op->reports, override_data);