summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalVisualStudioGenerator.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2009-07-10 13:12:39 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2009-07-10 13:12:39 (GMT)
commit5c4208f50e30a601b0cddd238232ca3f0db833af (patch)
tree507f16e1f2c2dadd822ea586bd289a6708ad82bc /Source/cmLocalVisualStudioGenerator.cxx
parent3199db4794722f3cfde50b364545517fcb4d370c (diff)
downloadCMake-5c4208f50e30a601b0cddd238232ca3f0db833af.zip
CMake-5c4208f50e30a601b0cddd238232ca3f0db833af.tar.gz
CMake-5c4208f50e30a601b0cddd238232ca3f0db833af.tar.bz2
ENH: only 5 failing tests for VS 10
Diffstat (limited to 'Source/cmLocalVisualStudioGenerator.cxx')
-rw-r--r--Source/cmLocalVisualStudioGenerator.cxx21
1 files changed, 20 insertions, 1 deletions
diff --git a/Source/cmLocalVisualStudioGenerator.cxx b/Source/cmLocalVisualStudioGenerator.cxx
index 4706a96..da214cf 100644
--- a/Source/cmLocalVisualStudioGenerator.cxx
+++ b/Source/cmLocalVisualStudioGenerator.cxx
@@ -26,6 +26,7 @@ cmLocalVisualStudioGenerator::cmLocalVisualStudioGenerator()
{
this->WindowsShell = true;
this->WindowsVSIDE = true;
+ this->NeedXMLEscape = false;
}
//----------------------------------------------------------------------------
@@ -231,8 +232,26 @@ cmLocalVisualStudioGenerator
}
else
{
- script += this->EscapeForShell(commandLine[j].c_str(),
+ if(this->NeedXMLEscape)
+ {
+ std::string arg = commandLine[j];
+ cmSystemTools::ReplaceString(arg, "&", "&amp;");
+ cmSystemTools::ReplaceString(arg, "<", "&lt;");
+ cmSystemTools::ReplaceString(arg, ">", "&gt;");
+ if(arg.find(" ") != arg.npos)
+ {
+ std::string q("\"");
+ arg = q + arg +q;
+ }
+ script += arg;
+ //script += this->EscapeForShell(arg.c_str(),
+ //escapeAllowMakeVars);
+ }
+ else
+ {
+ script += this->EscapeForShell(commandLine[j].c_str(),
escapeAllowMakeVars);
+ }
}
}
}