summaryrefslogtreecommitdiffstats
path: root/Source/cmRST.cxx
diff options
context:
space:
mode:
authorRolf Eike Beer <eike@sf-mail.de>2020-03-21 11:51:46 (GMT)
committerRolf Eike Beer <eike@sf-mail.de>2020-03-23 21:41:44 (GMT)
commitef778d77e0795ecba8af55a6984ad5fa5f44377a (patch)
treef2256f9fac53cc2be8840bc69cf1f8feb32c17f6 /Source/cmRST.cxx
parent77616f46817b6527c7e515de547625e554df21f9 (diff)
downloadCMake-ef778d77e0795ecba8af55a6984ad5fa5f44377a.zip
CMake-ef778d77e0795ecba8af55a6984ad5fa5f44377a.tar.gz
CMake-ef778d77e0795ecba8af55a6984ad5fa5f44377a.tar.bz2
replace std::string::substr() with operations that do not allocate memory
Modify the original string instead of creating a new copy with substr() when it is not used for anything else afterwards.
Diffstat (limited to 'Source/cmRST.cxx')
-rw-r--r--Source/cmRST.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/Source/cmRST.cxx b/Source/cmRST.cxx
index 68c15de..c39d162 100644
--- a/Source/cmRST.cxx
+++ b/Source/cmRST.cxx
@@ -89,7 +89,8 @@ void cmRST::ProcessModule(std::istream& is)
this->ProcessLine(line);
} else {
if (line[0] != '#') {
- this->ProcessLine(line.substr(0, pos));
+ line.resize(pos);
+ this->ProcessLine(line);
}
rst.clear();
this->Reset();
@@ -103,7 +104,8 @@ void cmRST::ProcessModule(std::istream& is)
continue;
}
if (cmHasLiteralPrefix(line, "# ")) {
- this->ProcessLine(line.substr(2));
+ line.erase(0, 2);
+ this->ProcessLine(line);
continue;
}
rst.clear();