BUG: Double-quotes in definitions must be escaped.

This commit is contained in:
Brad King 2005-10-03 14:33:35 -04:00
parent a1188cef3b
commit b9e088dcfa
1 changed files with 5 additions and 2 deletions

View File

@ -946,8 +946,11 @@ void cmLocalVisualStudio7Generator::OutputDefineFlags(const char* flags,
done = true; done = true;
} }
cmSystemTools::ReplaceString(define, "\"", """); // Double-quotes in the value of the definition must be escaped
fout << define << ","; // with a backslash. The entire definition should be quoted in
// the generated xml attribute to avoid confusing the VS parser.
cmSystemTools::ReplaceString(define, "\"", "\\&quot;");
fout << "&quot;" << define << "&quot;,";
if(!done) if(!done)
{ {
pos = defs.find("-D", nextpos); pos = defs.find("-D", nextpos);