diff --git a/payloads/libpayload/include/string.h b/payloads/libpayload/include/string.h index 4aff0e8994..52379a034d 100644 --- a/payloads/libpayload/include/string.h +++ b/payloads/libpayload/include/string.h @@ -73,7 +73,7 @@ char *strerror(int errnum); * @defgroup string Unicode functions * @{ */ -char *utf16le_to_ascii(uint16_t *utf16_string, int maxlen); +char *utf16le_to_ascii(const uint16_t *utf16_string, size_t maxlen); /** @} */ /** diff --git a/payloads/libpayload/libc/string.c b/payloads/libpayload/libc/string.c index 9a5a1ea4c1..fd88a88ad2 100644 --- a/payloads/libpayload/libc/string.c +++ b/payloads/libpayload/libc/string.c @@ -645,12 +645,11 @@ char *strerror(int errnum) * @param maxlen Maximum possible length of the string in code points * @return Newly allocated ASCII string */ -char *utf16le_to_ascii(uint16_t *utf16_string, int maxlen) +char *utf16le_to_ascii(const uint16_t *utf16_string, size_t maxlen) { char *ascii_string = xmalloc(maxlen + 1); /* +1 for trailing \0 */ ascii_string[maxlen] = '\0'; - int i; - for (i = 0; i < maxlen; i++) { + for (size_t i = 0; i < maxlen; i++) { uint16_t wchar = utf16_string[i]; ascii_string[i] = wchar > 0x7f ? '?' : (char)wchar; }