diff options
author | Brad King <brad.king@kitware.com> | 2002-12-11 23:13:33 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2002-12-11 23:13:33 (GMT) |
commit | 4888c088ae0ca829862e8b2f9568abca12dc34d1 (patch) | |
tree | 2c0fb825f1d1adff97d98373b555f00b84da14f7 /Source/cmCPluginAPI.cxx | |
parent | 5a321605bcc15c7e559c8da5168eef00796148b1 (diff) | |
download | CMake-4888c088ae0ca829862e8b2f9568abca12dc34d1.zip CMake-4888c088ae0ca829862e8b2f9568abca12dc34d1.tar.gz CMake-4888c088ae0ca829862e8b2f9568abca12dc34d1.tar.bz2 |
ENH: Moved ExpandListVariables out of individual commands. Argument evaluation rules are now very consistent. Double quotes can always be used to create exactly one argument, regardless of contents inside.
Diffstat (limited to 'Source/cmCPluginAPI.cxx')
-rw-r--r-- | Source/cmCPluginAPI.cxx | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/Source/cmCPluginAPI.cxx b/Source/cmCPluginAPI.cxx index 56da7d3..7116f4d 100644 --- a/Source/cmCPluginAPI.cxx +++ b/Source/cmCPluginAPI.cxx @@ -296,12 +296,14 @@ void cmExecuteCommand(void *arg, const char *name, { cmMakefile *mf = static_cast<cmMakefile *>(arg); std::vector<std::string> args2; - int i; - for (i = 0; i < numArgs; ++i) + cmListFileFunction lff; + lff.m_Name = name; + for(int i = 0; i < numArgs; ++i) { - args2.push_back(args[i]); + // Assume all arguments are quoted. + lff.m_Arguments.push_back(cmListFileArgument(args[i], true)); } - mf->ExecuteCommand(std::string(name), args2); + mf->ExecuteCommand(lff); } void cmExpandSourceListArguments(void *arg, |