diff options
-rw-r--r-- | src/tools/syncqt/main.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/tools/syncqt/main.cpp b/src/tools/syncqt/main.cpp index ac93d659c2..6f29ad5330 100644 --- a/src/tools/syncqt/main.cpp +++ b/src/tools/syncqt/main.cpp @@ -135,17 +135,24 @@ void printInternalError() << std::endl; } -std::filesystem::path normilizedPath(const std::string &path) -{ - return std::filesystem::path(std::filesystem::weakly_canonical(path).generic_string()); -} - void printFilesystemError(const std::filesystem::filesystem_error &fserr, std::string_view errorMsg) { std::cerr << errorMsg << ": " << fserr.path1() << ".\n" << fserr.what() << "(" << fserr.code().value() << ")" << std::endl; } +std::filesystem::path normilizedPath(const std::string &path) +{ + try { + auto result = std::filesystem::path(std::filesystem::weakly_canonical(path).generic_string()); + return result; + } catch (const std::filesystem::filesystem_error &fserr) { + printFilesystemError(fserr, "Unable to normalize path"); + throw; + } + return {}; +} + bool createDirectories(const std::string &path, std::string_view errorMsg, bool *exists = nullptr) { bool result = true; |