Changeset View
Changeset View
Standalone View
Standalone View
source/blender/blenkernel/intern/lib_id_delete.c
| Show All 13 Lines | |||||
| #include "DNA_ID.h" | #include "DNA_ID.h" | ||||
| #include "DNA_key_types.h" | #include "DNA_key_types.h" | ||||
| #include "BLI_utildefines.h" | #include "BLI_utildefines.h" | ||||
| #include "BLI_linklist.h" | #include "BLI_linklist.h" | ||||
| #include "BLI_listbase.h" | #include "BLI_listbase.h" | ||||
| #include "AS_asset_library.h" | |||||
| #include "BKE_anim_data.h" | #include "BKE_anim_data.h" | ||||
| #include "BKE_asset.h" | #include "BKE_asset.h" | ||||
| #include "BKE_asset_library.h" | |||||
| #include "BKE_idprop.h" | #include "BKE_idprop.h" | ||||
| #include "BKE_idtype.h" | #include "BKE_idtype.h" | ||||
| #include "BKE_key.h" | #include "BKE_key.h" | ||||
| #include "BKE_layer.h" | #include "BKE_layer.h" | ||||
| #include "BKE_lib_id.h" | #include "BKE_lib_id.h" | ||||
| #include "BKE_lib_override.h" | #include "BKE_lib_override.h" | ||||
| #include "BKE_lib_remap.h" | #include "BKE_lib_remap.h" | ||||
| #include "BKE_main.h" | #include "BKE_main.h" | ||||
| ▲ Show 20 Lines • Show All 121 Lines • ▼ Show 20 Lines | void BKE_id_free_ex(Main *bmain, void *idv, int flag, const bool use_flag_from_idtag) | ||||
| if ((flag & LIB_ID_FREE_NO_MAIN) == 0) { | if ((flag & LIB_ID_FREE_NO_MAIN) == 0) { | ||||
| ListBase *lb = which_libbase(bmain, type); | ListBase *lb = which_libbase(bmain, type); | ||||
| BLI_remlink(lb, id); | BLI_remlink(lb, id); | ||||
| if ((flag & LIB_ID_FREE_NO_NAMEMAP_REMOVE) == 0) { | if ((flag & LIB_ID_FREE_NO_NAMEMAP_REMOVE) == 0) { | ||||
| BKE_main_namemap_remove_name(bmain, id, id->name + 2); | BKE_main_namemap_remove_name(bmain, id, id->name + 2); | ||||
| } | } | ||||
| } | } | ||||
| BKE_asset_library_remap_ids(remapper); | AS_asset_library_remap_ids(remapper); | ||||
| BKE_id_remapper_free(remapper); | BKE_id_remapper_free(remapper); | ||||
| BKE_libblock_free_data(id, (flag & LIB_ID_FREE_NO_USER_REFCOUNT) == 0); | BKE_libblock_free_data(id, (flag & LIB_ID_FREE_NO_USER_REFCOUNT) == 0); | ||||
| if ((flag & LIB_ID_FREE_NO_MAIN) == 0) { | if ((flag & LIB_ID_FREE_NO_MAIN) == 0) { | ||||
| BKE_main_unlock(bmain); | BKE_main_unlock(bmain); | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 241 Lines • Show Last 20 Lines | |||||