summaryrefslogtreecommitdiffstats
path: root/Source/cmMacroCommand.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2015-01-17 16:36:19 (GMT)
committerStephen Kelly <steveire@gmail.com>2015-02-11 21:57:53 (GMT)
commit7b8725bf8472ebf4781ddd60ef8fcca9c3ad98dd (patch)
treec7f440ea9c81f49b066c9dd196ce705d288558d4 /Source/cmMacroCommand.cxx
parent7ee56f03999e8605cc2cbe85a3a7b7159e639e5d (diff)
downloadCMake-7b8725bf8472ebf4781ddd60ef8fcca9c3ad98dd.zip
CMake-7b8725bf8472ebf4781ddd60ef8fcca9c3ad98dd.tar.gz
CMake-7b8725bf8472ebf4781ddd60ef8fcca9c3ad98dd.tar.bz2
Convert loops populating maybe-empty content into the common pattern.
Diffstat (limited to 'Source/cmMacroCommand.cxx')
-rw-r--r--Source/cmMacroCommand.cxx23
1 files changed, 14 insertions, 9 deletions
diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx
index 657e750..81aaf3e 100644
--- a/Source/cmMacroCommand.cxx
+++ b/Source/cmMacroCommand.cxx
@@ -166,15 +166,17 @@ bool cmMacroHelperCommand::InvokeInitialPass
{
if (expandedArgs.size() > this->Args.size() - 1)
{
+ if (!argnDef.empty() && !expandedArgs.empty())
+ {
+ argnDef += ";";
+ }
std::vector<std::string>::const_iterator eit
= expandedArgs.begin() + (this->Args.size() - 1);
+ const char* sep = "";
for( ; eit != expandedArgs.end(); ++eit)
{
- if (!argnDef.empty())
- {
- argnDef += ";";
- }
- argnDef += *eit;
+ argnDef += sep + *eit;
+ sep = ";";
}
}
argnDefInitialized = true;
@@ -191,14 +193,17 @@ bool cmMacroHelperCommand::InvokeInitialPass
// repleace ARGV, compute it only once
if (!argvDefInitialized)
{
+ if (!argvDef.empty() && !expandedArgs.empty())
+ {
+ argvDef += ";";
+ }
+ const char* sep = "";
std::vector<std::string>::const_iterator eit;
for(eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit)
{
- if (!argvDef.empty())
- {
- argvDef += ";";
- }
+ argvDef += sep;
argvDef += *eit;
+ sep = ";";
}
argvDefInitialized = true;
}