summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Malyshev <stas@php.net>2016-09-04 19:13:22 -0700
committerStanislav Malyshev <stas@php.net>2016-09-04 19:13:48 -0700
commitd1fbc98ff644ead86262497af2febc8ccb6bf401 (patch)
treeacf2b68a50b619b11a2cbef6d076578ac4a85617
parentb7259b71b430ed733441261f7cf1282f04bb80f1 (diff)
downloadphp-git-d1fbc98ff644ead86262497af2febc8ccb6bf401.tar.gz
Sync fix for bug #72910 with current upstream
-rw-r--r--ext/mbstring/oniguruma/enc/utf8.c8
1 files 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--) {