diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/windows/jni/WindowsProcesses.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/windows/jni/WindowsProcesses.java b/src/main/java/com/google/devtools/build/lib/windows/jni/WindowsProcesses.java index bb13941bcb..65b262088a 100644 --- a/src/main/java/com/google/devtools/build/lib/windows/jni/WindowsProcesses.java +++ b/src/main/java/com/google/devtools/build/lib/windows/jni/WindowsProcesses.java @@ -216,6 +216,9 @@ public class WindowsProcesses { private static native int nativeGetpid(); + // TODO(laszlocsomor): Audit this method and fix bugs. This method implements Bash quoting + // semantics but Windows quote semantics are different. + // More info: http://daviddeley.com/autohotkey/parameters/parameters.htm public static String quoteCommandLine(List<String> argv) { StringBuilder result = new StringBuilder(); for (int iArg = 0; iArg < argv.size(); iArg++) { @@ -223,6 +226,10 @@ public class WindowsProcesses { result.append(" "); } String arg = argv.get(iArg); + if (arg.isEmpty()) { + result.append("\"\""); + continue; + } boolean hasSpace = arg.contains(" "); if (!arg.contains("\"") && !arg.contains("\\") && !hasSpace) { // fast path. Just append the input string. |