From 7c3f637680ac0cdb6cec5e75ba4a9b188de5017b Mon Sep 17 00:00:00 2001 From: Stephen Kelly <steveire@gmail.com> Date: Sat, 24 Jan 2015 18:07:37 +0100 Subject: Convert loop into two algorithms. --- Source/cmLocalUnixMakefileGenerator3.cxx | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 359141a..a08c159 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2299,16 +2299,12 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, { // Now add the rest of the components separated by the proper slash // direction for this platform. - const char* sep = ""; - for(unsigned int i=1; i < components.size() - 1; ++i) - { - if(!components[i].empty()) - { - result += sep; - result += components[i]; - sep = slash; - } - } + std::vector<std::string>::const_iterator compEnd + = std::remove(components.begin() + 1, components.end() - 1, + std::string()); + std::vector<std::string>::const_iterator compStart + = components.begin() + 1; + result += cmJoin(cmRange(compStart, compEnd), slash); // Only the last component can be empty to avoid double slashes. result += slash; result += components.back(); -- cgit v0.12