diff options
author | Sybren A. Stüvel <sybren@blender.org> | 2020-12-22 16:05:49 +0300 |
---|---|---|
committer | Sybren A. Stüvel <sybren@blender.org> | 2020-12-22 16:05:49 +0300 |
commit | 2601501fce554290d9245fdbcb536c7c87c73f11 (patch) | |
tree | a077501b38cddabfe5158e3d886ae55ce7606495 /source/blender/blenkernel/BKE_lib_id.h | |
parent | 512a23c3d61d3ac454e9c098ddbf1d0d3beb19a0 (diff) |
RNA: make `bpy.data.orphans_purge()` return number of deleted datablocks
Sometimes multiple calls to `bpy.data.orphans_purge()` are needed to
delete all orphans, because a call can turn previously-used datablocks
into orphans. Returning the number of deleted datablocks makes it
possible to keep looping until nothing can be deleted any more.
This patch keeps track of deletions in `id_delete()` so that it can be
returned up the call stack.
Reviewed By: mont29
Differential Revision: https://developer.blender.org/D9918
Diffstat (limited to 'source/blender/blenkernel/BKE_lib_id.h')
-rw-r--r-- | source/blender/blenkernel/BKE_lib_id.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/blenkernel/BKE_lib_id.h b/source/blender/blenkernel/BKE_lib_id.h index b0971278dc7..cfd1db1317c 100644 --- a/source/blender/blenkernel/BKE_lib_id.h +++ b/source/blender/blenkernel/BKE_lib_id.h @@ -200,7 +200,7 @@ void BKE_id_free(struct Main *bmain, void *idv); void BKE_id_free_us(struct Main *bmain, void *idv) ATTR_NONNULL(); void BKE_id_delete(struct Main *bmain, void *idv) ATTR_NONNULL(); -void BKE_id_multi_tagged_delete(struct Main *bmain) ATTR_NONNULL(); +size_t BKE_id_multi_tagged_delete(struct Main *bmain) ATTR_NONNULL(); void BKE_libblock_management_main_add(struct Main *bmain, void *idv); void BKE_libblock_management_main_remove(struct Main *bmain, void *idv); |