ENH: ExpandListArguments(): empty elements in semi-colon-separated string-list can now be ignored.
This commit is contained in:
parent
a5b833119d
commit
ccbdc30a8c
|
@ -1609,7 +1609,8 @@ void cmSystemTools::GlobDirs(const char *fullPath,
|
||||||
|
|
||||||
|
|
||||||
void cmSystemTools::ExpandListArguments(std::vector<std::string> const& arguments,
|
void cmSystemTools::ExpandListArguments(std::vector<std::string> const& arguments,
|
||||||
std::vector<std::string>& newargs)
|
std::vector<std::string>& newargs,
|
||||||
|
bool ignore_empty)
|
||||||
{
|
{
|
||||||
std::vector<std::string>::const_iterator i;
|
std::vector<std::string>::const_iterator i;
|
||||||
for(i = arguments.begin();i != arguments.end(); ++i)
|
for(i = arguments.begin();i != arguments.end(); ++i)
|
||||||
|
@ -1630,7 +1631,10 @@ void cmSystemTools::ExpandListArguments(std::vector<std::string> const& argument
|
||||||
{
|
{
|
||||||
len = i->size()-start;
|
len = i->size()-start;
|
||||||
}
|
}
|
||||||
newargs.push_back(i->substr(start, len));
|
if (ignore_empty == false || len > 0)
|
||||||
|
{
|
||||||
|
newargs.push_back(i->substr(start, len));
|
||||||
|
}
|
||||||
start = endpos+1;
|
start = endpos+1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,7 +48,8 @@ public:
|
||||||
* containing the expanded versions of all arguments in argsIn.
|
* containing the expanded versions of all arguments in argsIn.
|
||||||
*/
|
*/
|
||||||
static void ExpandListArguments(std::vector<std::string> const& argsIn,
|
static void ExpandListArguments(std::vector<std::string> const& argsIn,
|
||||||
std::vector<std::string>& argsOut);
|
std::vector<std::string>& argsOut,
|
||||||
|
bool ignore_empty = false);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Look for and replace registry values in a string
|
* Look for and replace registry values in a string
|
||||||
|
|
Loading…
Reference in New Issue