diff options
author | Morph <39850852+Morph1984@users.noreply.github.com> | 2021-10-13 12:49:22 -0400 |
---|---|---|
committer | Morph <39850852+Morph1984@users.noreply.github.com> | 2021-10-14 14:09:34 -0400 |
commit | 3ffff78a27bb6db97224bbd831b6aafb39fb51bd (patch) | |
tree | cdac4815379a25504b5ec62a522dbe8e8c30ff98 /src/common/string_util.cpp | |
parent | 44c73cfca0b89936b1cfe2eb3a443e62658dd923 (diff) |
string_util: Prevent out of bounds access in u16string_view buffer
Diffstat (limited to 'src/common/string_util.cpp')
-rw-r--r-- | src/common/string_util.cpp | 4 |
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); } |