From fbe16bc1ebc669893eca5d0093821425b6dc6dbc Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Thu, 21 Mar 2024 09:43:40 +1100 Subject: [PATCH] BLI_delete: assert that dir is true when recursive is true While this isn't an error avoid ambiguity for recursive deletion as it's not meaningful to delete a file. --- source/blender/blenlib/intern/fileops_c.cc | 5 +++++ source/blender/sequencer/intern/disk_cache.cc | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/source/blender/blenlib/intern/fileops_c.cc b/source/blender/blenlib/intern/fileops_c.cc index 2245fbd17b5..207d735e59d 100644 --- a/source/blender/blenlib/intern/fileops_c.cc +++ b/source/blender/blenlib/intern/fileops_c.cc @@ -734,6 +734,9 @@ int BLI_delete(const char *path, bool dir, bool recursive) BLI_assert(!BLI_path_is_rel(path)); + /* Not an error but avoid ambiguous arguments (recursive file deletion isn't meaningful). */ + BLI_assert(!(dir == false && recursive == true)); + if (recursive) { err = delete_recursive(path); } @@ -1281,6 +1284,8 @@ int BLI_access(const char *filepath, int mode) int BLI_delete(const char *path, bool dir, bool recursive) { BLI_assert(!BLI_path_is_rel(path)); + /* Not an error but avoid ambiguous arguments (recursive file deletion isn't meaningful). */ + BLI_assert(!(dir == false && recursive == true)); if (recursive) { return recursive_operation(path, nullptr, nullptr, delete_single_file, delete_callback_post); diff --git a/source/blender/sequencer/intern/disk_cache.cc b/source/blender/sequencer/intern/disk_cache.cc index 3566b963c54..1686d86a499 100644 --- a/source/blender/sequencer/intern/disk_cache.cc +++ b/source/blender/sequencer/intern/disk_cache.cc @@ -361,7 +361,7 @@ static void seq_disk_cache_handle_versioning(SeqDiskCache *disk_cache) } if (version != DCACHE_CURRENT_VERSION) { - BLI_delete(dirpath, false, true); + BLI_delete(dirpath, true, true); seq_disk_cache_create_version_file(path_version_file); } }