[Lldb-commits] [lldb] r229784 - A few minor path fixes for Windows.

Zachary Turner zturner at google.com
Wed Feb 18 15:59:12 PST 2015

Author: zturner
Date: Wed Feb 18 17:59:11 2015
New Revision: 229784

URL: http://llvm.org/viewvc/llvm-project?rev=229784&view=rev
A few minor path fixes for Windows.

When launching argdumper, there are a few problems with the
current logic.  First, on Windows, the file is called
argdumper.exe, not argdumper.  Second, Windows paths have
backslashes in them, and JSON treats <backslash><char> as an
escape sequence.  To fix the second problem, on Windows we
convert backslashes to forward slashes, since backslash isn't
a valid filename character anyway this shouldn't be a problem.


Modified: lldb/trunk/source/Target/Platform.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/Platform.cpp?rev=229784&r1=229783&r2=229784&view=diff
--- lldb/trunk/source/Target/Platform.cpp (original)
+++ lldb/trunk/source/Target/Platform.cpp Wed Feb 18 17:59:11 2015
@@ -1122,7 +1122,11 @@ Platform::LaunchProcess (ProcessLaunchIn
                 error.SetErrorString("could not find argdumper tool");
                 return error;
+#if defined(_WIN32)
+            glob_tool_spec.AppendPathComponent("argdumper.exe");
             if (!glob_tool_spec.Exists())
                 error.SetErrorString("could not find argdumper tool");
@@ -1131,7 +1135,9 @@ Platform::LaunchProcess (ProcessLaunchIn
             std::string quoted_cmd_string;
+#if defined(_WIN32)
+            std::replace(quoted_cmd_string.begin(), quoted_cmd_string.end(), '\\', '/');
             StreamString glob_command;
             glob_command.Printf("%s %s",

More information about the lldb-commits mailing list