summaryrefslogtreecommitdiff
path: root/Source/Core/Common/FileUtil.cpp
diff options
context:
space:
mode:
authorDentomologist <dentomologist@gmail.com>2025-10-05 16:17:12 -0700
committerDentomologist <dentomologist@gmail.com>2025-10-05 16:29:41 -0700
commitf64e57442c813fc76bc775b4dc9ac41e18add80f (patch)
tree34e06b7cbf72c8212efef4a40e01a6c60741cac3 /Source/Core/Common/FileUtil.cpp
parent9c97498f4b2982221faf17e0cf97af43a6fa0984 (diff)
DeleteDirRecursively: Don't report error for absent directory
Check if the return value of std::filesystem::remove_all is -1 rather than 0; the former is the specified return value if there's an error while 0 just means the directory already didn't exist (which is the end result we want). Previously error messages such as the following were possible: E[COMMON]: DeleteDirRecursively: [path]/User/RedirectSession/ failed The operation completed successfully. Also adds a period in the error string to make it look nicer.
Diffstat (limited to 'Source/Core/Common/FileUtil.cpp')
-rw-r--r--Source/Core/Common/FileUtil.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/Source/Core/Common/FileUtil.cpp b/Source/Core/Common/FileUtil.cpp
index 21b8a1bf3c..4521be00be 100644
--- a/Source/Core/Common/FileUtil.cpp
+++ b/Source/Core/Common/FileUtil.cpp
@@ -528,9 +528,9 @@ bool DeleteDirRecursively(const std::string& directory)
std::error_code error;
const std::uintmax_t num_removed = std::filesystem::remove_all(StringToPath(directory), error);
- const bool success = num_removed != 0 && !error;
+ const bool success = num_removed != static_cast<std::uintmax_t>(-1) && !error;
if (!success)
- ERROR_LOG_FMT(COMMON, "{}: {} failed {}", __func__, directory, error.message());
+ ERROR_LOG_FMT(COMMON, "{}: {} failed. {}", __func__, directory, error.message());
return success;
}