shithub: sl

Download patch

ref: f67f3adf59246760c07cc8ba5f709dea672ec176
parent: 16ddbe3a05cba1ba946ccd078f2da983c03784c7
author: Sigrid Solveig Haflínudóttir <sigrid@ftrv.se>
date: Sun Jan 5 22:36:19 EST 2025

u8_nextmemchar: make clang-analyzer less confused

--- a/utf8.c
+++ b/utf8.c
@@ -80,13 +80,13 @@
 Rune
 u8_nextmemchar(const char *s, size_t *i)
 {
-	size_t sz = u8_seqlen(&s[*i]);
+	size_t sz = trailingBytesForUTF8[(uint8_t)s[*i]];
 	Rune ch = 0;
-	for(size_t j = 0; j < sz; j++){
+	for(size_t j = 0; j <= sz; j++){
 		ch <<= 6;
 		ch += (uint8_t)s[(*i)++];
 	};
-	return ch - offsetsFromUTF8[sz-1];
+	return ch - offsetsFromUTF8[sz];
 }
 
 int