cm_utf8: Fail on empty input range

Issue: #23132
This commit is contained in:
Brad King
2022-01-21 10:59:13 -05:00
parent 91de0ff599
commit 0bd6009a0c

View File

@@ -42,6 +42,11 @@ static unsigned int const cm_utf8_min[7] = {
const char* cm_utf8_decode_character(const char* first, const char* last,
unsigned int* pc)
{
/* We need at least one byte. */
if (first == last) {
return 0;
}
/* Count leading ones in the first byte. */
unsigned char c = (unsigned char)*first++;
unsigned char const ones = cm_utf8_ones[c];