From b570c506815212c7702bfb0046e87d541e171eb7 Mon Sep 17 00:00:00 2001 From: Stanislav Malyshev Date: Sun, 4 Sep 2016 19:13:22 -0700 Subject: Sync fix for bug #72910 with current upstream --- ext/mbstring/oniguruma/enc/utf8.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ext/mbstring/oniguruma/enc/utf8.c b/ext/mbstring/oniguruma/enc/utf8.c index 74122e14bf..9e8478ffc6 100644 --- a/ext/mbstring/oniguruma/enc/utf8.c +++ b/ext/mbstring/oniguruma/enc/utf8.c @@ -91,14 +91,16 @@ is_mbc_newline(const UChar* p, const UChar* end) } static OnigCodePoint -mbc_to_code(const UChar* p, const UChar* end ARG_UNUSED) +mbc_to_code(const UChar* p, const UChar* end) { int c, len; OnigCodePoint n; - len = enclen(ONIG_ENCODING_UTF8, p); + len = mbc_enc_len(p); + if (len > end - p) len = end - p; + c = *p++; - if (len > 1 && p < end) { + if (len > 1) { len--; n = c & ((1 << (6 - len)) - 1); while (len--) { -- cgit v1.2.1