From da160dc32d1518dc3e59a8fb7995b59c88870444 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sat, 27 Mar 2021 13:38:44 +1100 Subject: Object: faster object deletion The `object_delete_exec` lead to `BKE_library_ID_is_indirectly_used` being called twice. With this patch deleting is around 20% faster. Example when deleting 10000 objects: Current: 35.6s This patch: 18.8s (updated, last rev 29.7s) Reviewed By: campbellbarton Ref D9857 --- source/blender/editors/include/ED_object.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'source/blender/editors/include/ED_object.h') diff --git a/source/blender/editors/include/ED_object.h b/source/blender/editors/include/ED_object.h index 0767ce21382..b5a94bc7798 100644 --- a/source/blender/editors/include/ED_object.h +++ b/source/blender/editors/include/ED_object.h @@ -178,6 +178,9 @@ void ED_object_base_active_refresh(struct Main *bmain, struct Scene *scene, struct ViewLayer *view_layer); void ED_object_base_free_and_unlink(struct Main *bmain, struct Scene *scene, struct Object *ob); +void ED_object_base_free_and_unlink_no_indirect_check(struct Main *bmain, + struct Scene *scene, + struct Object *ob); bool ED_object_base_deselect_all_ex(struct ViewLayer *view_layer, struct View3D *v3d, int action, -- cgit v1.2.3