From 5689f30cd0cffacbd8449f662c95403e547b05bd Mon Sep 17 00:00:00 2001 From: Fabrice Bellard Date: Mon, 25 Aug 2025 18:20:58 +0200 Subject: [PATCH] fixed handling of 8 bit unicode strings in RegExp (regression introduced by commit a4ac84d) --- libregexp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libregexp.c b/libregexp.c index 8ae4bac..0cf9a12 100644 --- a/libregexp.c +++ b/libregexp.c @@ -3190,7 +3190,7 @@ int lre_exec(uint8_t **capture, stack_buf = alloca(alloca_size); cptr = cbuf + (cindex << cbuf_type); - if (0 < cindex && cindex < clen && s->is_unicode) { + if (0 < cindex && cindex < clen && s->cbuf_type == 2) { const uint16_t *p = (const uint16_t *)cptr; if (is_lo_surrogate(*p) && is_hi_surrogate(p[-1])) { cptr = (const uint8_t *)(p - 1);