Revert "Merge pull request #5174 from ReinUsesLisp/fs-fix"

This reverts commit 5fe55b16a1, reversing
changes made to e94dd7e2c4.
This commit is contained in:
Morph 2020-12-11 20:22:01 -05:00
parent dfee6321cd
commit 8941cdb7d2
2 changed files with 4 additions and 36 deletions

View file

@ -98,11 +98,6 @@ bool Delete(const fs::path& path) {
bool CreateDir(const fs::path& path) { bool CreateDir(const fs::path& path) {
LOG_TRACE(Common_Filesystem, "directory {}", path.string()); LOG_TRACE(Common_Filesystem, "directory {}", path.string());
if (Exists(path)) {
LOG_DEBUG(Common_Filesystem, "path exists {}", path.string());
return true;
}
std::error_code ec; std::error_code ec;
const bool success = fs::create_directory(path, ec); const bool success = fs::create_directory(path, ec);
@ -114,41 +109,20 @@ bool CreateDir(const fs::path& path) {
return true; return true;
} }
bool CreateDirs(const fs::path& path) { bool CreateFullPath(const fs::path& path) {
LOG_TRACE(Common_Filesystem, "path {}", path.string()); LOG_TRACE(Common_Filesystem, "path {}", path.string());
if (Exists(path)) {
LOG_DEBUG(Common_Filesystem, "path exists {}", path.string());
return true;
}
std::error_code ec; std::error_code ec;
const bool success = fs::create_directories(path, ec); const bool success = fs::create_directories(path, ec);
if (!success) { if (!success) {
LOG_ERROR(Common_Filesystem, "Unable to create directories: {}", ec.message()); LOG_ERROR(Common_Filesystem, "Unable to create full path: {}", ec.message());
return false; return false;
} }
return true; return true;
} }
bool CreateFullPath(const fs::path& path) {
LOG_TRACE(Common_Filesystem, "path {}", path);
// Removes trailing slashes and turns any '\' into '/'
const auto new_path = SanitizePath(path.string(), DirectorySeparator::ForwardSlash);
if (new_path.rfind('.') == std::string::npos) {
// The path is a directory
return CreateDirs(new_path);
} else {
// The path is a file
// Creates directory preceding the last '/'
return CreateDirs(new_path.substr(0, new_path.rfind('/')));
}
}
bool Rename(const fs::path& src, const fs::path& dst) { bool Rename(const fs::path& src, const fs::path& dst) {
LOG_TRACE(Common_Filesystem, "{} --> {}", src.string(), dst.string()); LOG_TRACE(Common_Filesystem, "{} --> {}", src.string(), dst.string());

View file

@ -54,14 +54,8 @@ enum class UserPath {
// Returns true if successful, or path already exists. // Returns true if successful, or path already exists.
bool CreateDir(const std::filesystem::path& path); bool CreateDir(const std::filesystem::path& path);
// Create all directories in path // Creates the full path of path. Returns true on success
// Returns true if successful, or path already exists. bool CreateFullPath(const std::filesystem::path& path);
[[nodiscard("Directory creation can fail and must be tested")]] bool CreateDirs(
const std::filesystem::path& path);
// Creates directories in path. Returns true on success.
[[deprecated("This function is deprecated, use CreateDirs")]] bool CreateFullPath(
const std::filesystem::path& path);
// Deletes a given file at the path. // Deletes a given file at the path.
// This will also delete empty directories. // This will also delete empty directories.