Merge pull request #9340 from Microsoft/gulp-allow-space-in-exec

Gulp: Allow space in exec cmds
This commit is contained in:
Wesley Wigham 2016-06-24 15:48:36 -07:00 committed by GitHub
commit 0b4b372e80

View File

@ -69,12 +69,15 @@ function exec(cmd: string, args: string[], complete: () => void = (() => {}), er
console.log(`${cmd} ${args.join(" ")}`);
// TODO (weswig): Update child_process types to add windowsVerbatimArguments to the type definition
const subshellFlag = isWin ? "/c" : "-c";
const command = isWin ? [cmd, ...args] : [`${cmd} ${args.join(" ")}`];
const command = isWin ? [possiblyQuote(cmd), ...args] : [`${cmd} ${args.join(" ")}`];
const ex = cp.spawn(isWin ? "cmd" : "/bin/sh", [subshellFlag, ...command], { stdio: "inherit", windowsVerbatimArguments: true } as any);
ex.on("exit", (code) => code === 0 ? complete() : error(/*e*/ undefined, code));
ex.on("error", error);
}
function possiblyQuote(cmd: string) {
return cmd.indexOf(" ") >= 0 ? `"${cmd}"` : cmd;
}
let useDebugMode = true;
let host = cmdLineOptions["host"];