summaryrefslogtreecommitdiff
path: root/euler/source/std/string.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'euler/source/std/string.cpp')
-rw-r--r--euler/source/std/string.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/euler/source/std/string.cpp b/euler/source/std/string.cpp
index 31c47a5..ae397b1 100644
--- a/euler/source/std/string.cpp
+++ b/euler/source/std/string.cpp
@@ -44,6 +44,7 @@ namespace std {
value = value * base + c - 'A' + 10;
else
break;
+ ++i;
}
if (pos != 0)
@@ -75,10 +76,11 @@ namespace std {
}
std::string operator +(std::string &&lhs, std::string &&rhs) {
+ size_t og_lhs_s = lhs.size();
std::string s = std::move(lhs);
- s.resize(lhs.size() + rhs.size());
+ s.resize(og_lhs_s + rhs.size());
for (size_t i = 0; i < rhs.size(); ++i)
- s[lhs.size() + i] = rhs[i];
+ s[og_lhs_s + i] = rhs[i];
rhs.clear();
return s;
}