aboutsummaryrefslogtreecommitdiff
path: root/src/util
diff options
context:
space:
mode:
authorAva Chow <github@achow101.com>2024-03-13 08:18:01 -0400
committerAva Chow <github@achow101.com>2024-03-13 08:18:06 -0400
commitc38157b9b9ad2d3043bd904e572b0a8ef2b276fb (patch)
tree07263df02540d85e8b87a9424218c7514ff702f3 /src/util
parent264ca9db240158403f6b9076d2fd5ef2522c391b (diff)
parent6f2f4a4d096a3b261258c8cdd96cca532988d1d3 (diff)
downloadbitcoin-c38157b9b9ad2d3043bd904e572b0a8ef2b276fb.tar.xz
Merge bitcoin/bitcoin#29606: refactor: Reserve memory for ToLower/ToUpper conversions
6f2f4a4d096a3b261258c8cdd96cca532988d1d3 Reserve memory for ToLower/ToUpper conversions (LÅ‘rinc) Pull request description: Similarly to https://github.com/bitcoin/bitcoin/pull/29458, we're preallocating the result string based on the input string's length. The methods were already [covered by tests](https://github.com/bitcoin/bitcoin/blob/master/src/test/util_tests.cpp#L1250-L1276). ACKs for top commit: tdb3: ACK for 6f2f4a4d096a3b261258c8cdd96cca532988d1d3 maflcko: lgtm ACK 6f2f4a4d096a3b261258c8cdd96cca532988d1d3 achow101: ACK 6f2f4a4d096a3b261258c8cdd96cca532988d1d3 Empact: Code Review ACK https://github.com/bitcoin/bitcoin/pull/29606/commits/6f2f4a4d096a3b261258c8cdd96cca532988d1d3 stickies-v: ACK 6f2f4a4d096a3b261258c8cdd96cca532988d1d3 Tree-SHA512: e3ba7af77decdc73272d804c94fef0b11028a85f3c0ea1ed6386672611b1c35fce151f02e64f5bb5acb5ba506aaa54577719b07925b9cc745143cf5c7e5eb262
Diffstat (limited to 'src/util')
-rw-r--r--src/util/strencodings.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/util/strencodings.cpp b/src/util/strencodings.cpp
index b51b283a69..7b5ded2975 100644
--- a/src/util/strencodings.cpp
+++ b/src/util/strencodings.cpp
@@ -446,6 +446,7 @@ bool ParseFixedPoint(std::string_view val, int decimals, int64_t *amount_out)
std::string ToLower(std::string_view str)
{
std::string r;
+ r.reserve(str.size());
for (auto ch : str) r += ToLower(ch);
return r;
}
@@ -453,6 +454,7 @@ std::string ToLower(std::string_view str)
std::string ToUpper(std::string_view str)
{
std::string r;
+ r.reserve(str.size());
for (auto ch : str) r += ToUpper(ch);
return r;
}