diff options
Diffstat (limited to 'libs')
| -rw-r--r-- | libs/kstd/kstd/libc/string.cpp | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/libs/kstd/kstd/libc/string.cpp b/libs/kstd/kstd/libc/string.cpp index 986f63a6..bd4a4048 100644 --- a/libs/kstd/kstd/libc/string.cpp +++ b/libs/kstd/kstd/libc/string.cpp @@ -74,13 +74,9 @@ namespace kstd::libc auto memchr(void const * buffer, int character, std::size_t size) noexcept -> void * { - auto as_char_ptr = reinterpret_cast<char const *>(buffer); - auto found = kstd::char_traits<char>::find(as_char_ptr, size, static_cast<char>(character)); - - if (found == as_char_ptr + size) - { - return nullptr; - } + auto as_char_ptr = reinterpret_cast<unsigned char const *>(buffer); + auto as_char = static_cast<unsigned char>(character); + auto found = kstd::char_traits<unsigned char>::find(as_char_ptr, size, as_char); return const_cast<void *>(static_cast<void const *>(found)); } |
