summaryrefslogtreecommitdiff
path: root/src/util/string.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/string.cpp')
-rw-r--r--src/util/string.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/util/string.cpp b/src/util/string.cpp
index 7f178415..3a03a0be 100644
--- a/src/util/string.cpp
+++ b/src/util/string.cpp
@@ -134,7 +134,8 @@ percent_decode(std::string_view string)
std::string result;
result.reserve(string.size());
- for (size_t i = 0; i < string.size(); ++i) {
+ size_t i = 0;
+ while (i < string.size()) {
if (string[i] != '%') {
result += string[i];
} else if (i + 2 >= string.size() || !std::isxdigit(string[i + 1])
@@ -147,6 +148,7 @@ percent_decode(std::string_view string)
result += ch;
i += 2;
}
+ ++i;
}
return result;