summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/source/Initialization/SystemInitializerCommon.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/lldb/source/Initialization/SystemInitializerCommon.cpp b/lldb/source/Initialization/SystemInitializerCommon.cpp
index 5b8bd8926ac..e928bbc1641 100644
--- a/lldb/source/Initialization/SystemInitializerCommon.cpp
+++ b/lldb/source/Initialization/SystemInitializerCommon.cpp
@@ -80,8 +80,13 @@ llvm::Error SystemInitializerCommon::Initialize() {
}
if (llvm::Expected<std::string> cwd =
loader->LoadBuffer<WorkingDirectoryProvider>()) {
- FileSystem::Instance().GetVirtualFileSystem()->setCurrentWorkingDirectory(
- *cwd);
+ cwd->erase(std::remove_if(cwd->begin(), cwd->end(), std::iscntrl),
+ cwd->end());
+ if (std::error_code ec = FileSystem::Instance()
+ .GetVirtualFileSystem()
+ ->setCurrentWorkingDirectory(*cwd)) {
+ return llvm::errorCodeToError(ec);
+ }
} else {
return cwd.takeError();
}
OpenPOWER on IntegriCloud