Ninja: multiple commands must be quoted

Bug 14370
This commit is contained in:
Peter Kümmel 2013-11-25 11:17:14 +01:00
parent ac2acd22dd
commit b6f1142c8b
1 changed files with 24 additions and 8 deletions

View File

@ -287,16 +287,32 @@ std::string cmLocalNinjaGenerator::BuildCommandLine(
cmOStringStream cmd;
for (std::vector<std::string>::const_iterator li = cmdLines.begin();
li != cmdLines.end(); ++li) {
if (li != cmdLines.begin()) {
cmd << " && ";
li != cmdLines.end(); ++li)
#ifdef _WIN32
} else if (cmdLines.size() > 1) {
cmd << "cmd.exe /c ";
#endif
}
{
if (li != cmdLines.begin())
{
cmd << " && ";
}
else if (cmdLines.size() > 1)
{
cmd << "cmd.exe /C \"";
}
cmd << *li;
}
}
if (cmdLines.size() > 1)
{
cmd << "\"";
}
#else
{
if (li != cmdLines.begin())
{
cmd << " && ";
}
cmd << *li;
}
#endif
return cmd.str();
}