From: Rui Hirokawa Date: Fri, 23 Dec 2005 11:15:16 +0000 (+0000) Subject: MFH: fixed #28899 mb_substr() and substr() work differently when mbstring.func_overlo... X-Git-Tag: php-5.1.2RC2~102 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=cf90abfc247160877456bee56c97ad36bd9bef84;p=php MFH: fixed #28899 mb_substr() and substr() work differently when mbstring.func_overload is enabled. --- diff --git a/ext/mbstring/mbstring.c b/ext/mbstring/mbstring.c index 7e665c37d4..c21c54a93a 100644 --- a/ext/mbstring/mbstring.c +++ b/ext/mbstring/mbstring.c @@ -1763,6 +1763,11 @@ PHP_FUNCTION(mb_substr) } } + if (((MBSTRG(func_overload) & MB_OVERLOAD_STRING) == MB_OVERLOAD_STRING) + && (from >= mbfl_strlen(&string))) { + RETURN_FALSE; + } + ret = mbfl_substr(&string, &result, from, len); if (ret != NULL) { RETVAL_STRINGL((char *)ret->val, ret->len, 0); /* the string is already strdup()'ed */