summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMorph <39850852+Morph1984@users.noreply.github.com>2021-10-13 12:49:22 -0400
committerMorph <39850852+Morph1984@users.noreply.github.com>2021-10-14 14:09:34 -0400
commit3ffff78a27bb6db97224bbd831b6aafb39fb51bd (patch)
treecdac4815379a25504b5ec62a522dbe8e8c30ff98 /src
parent44c73cfca0b89936b1cfe2eb3a443e62658dd923 (diff)
string_util: Prevent out of bounds access in u16string_view buffer
Diffstat (limited to 'src')
-rw-r--r--src/common/string_util.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/common/string_util.cpp b/src/common/string_util.cpp
index e6344fd41..9617c3fa3 100644
--- a/src/common/string_util.cpp
+++ b/src/common/string_util.cpp
@@ -191,9 +191,9 @@ std::string StringFromFixedZeroTerminatedBuffer(const char* buffer, std::size_t
std::u16string UTF16StringFromFixedZeroTerminatedBuffer(std::u16string_view buffer,
std::size_t max_len) {
std::size_t len = 0;
- while (len < max_len && buffer[len] != '\0')
+ while (len < buffer.length() && len < max_len && buffer[len] != '\0') {
++len;
-
+ }
return std::u16string(buffer.begin(), buffer.begin() + len);
}