From 9e66f3694225e844562a13d2734d5e4e32f65c36 Mon Sep 17 00:00:00 2001 From: Silent Date: Sat, 5 Oct 2019 17:25:07 +0200 Subject: [PATCH] Handle ERROR_FILENAME_EXCED_RANGE error on Windows --- Utilities/File.cpp | 2 ++ Utilities/File.h | 1 + 2 files changed, 3 insertions(+) diff --git a/Utilities/File.cpp b/Utilities/File.cpp index bb4fd5c348..5b49fc5ebf 100644 --- a/Utilities/File.cpp +++ b/Utilities/File.cpp @@ -128,6 +128,7 @@ static fs::error to_error(DWORD e) case ERROR_SHARING_VIOLATION: return fs::error::acces; case ERROR_DIR_NOT_EMPTY: return fs::error::notempty; case ERROR_NOT_READY: return fs::error::noent; + case ERROR_FILENAME_EXCED_RANGE: return fs::error::toolong; //case ERROR_INVALID_PARAMETER: return fs::error::inval; default: fmt::throw_exception("Unknown Win32 error: %u.", e); } @@ -1786,6 +1787,7 @@ void fmt_class_string::format(std::string& out, u64 arg) case fs::error::notempty: return "Not empty"; case fs::error::readonly: return "Read only"; case fs::error::isdir: return "Is a directory"; + case fs::error::toolong: return "Path too long"; } return unknown; diff --git a/Utilities/File.h b/Utilities/File.h index 6e426d365c..5bcf27b96d 100644 --- a/Utilities/File.h +++ b/Utilities/File.h @@ -515,6 +515,7 @@ namespace fs notempty, readonly, isdir, + toolong, }; // Error code returned