diff options
author | Brad King <brad.king@kitware.com> | 2002-12-11 18:13:33 -0500 |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2002-12-11 18:13:33 -0500 |
commit | 4888c088ae0ca829862e8b2f9568abca12dc34d1 (patch) | |
tree | 2c0fb825f1d1adff97d98373b555f00b84da14f7 /Source/cmCPluginAPI.cxx | |
parent | 5a321605bcc15c7e559c8da5168eef00796148b1 (diff) | |
download | cmake-4888c088ae0ca829862e8b2f9568abca12dc34d1.tar.gz |
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 56da7d39e5..7116f4d1ae 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, |