diff options
author | Antony Dovgal <tony2001@php.net> | 2005-12-16 14:50:32 +0000 |
---|---|---|
committer | Antony Dovgal <tony2001@php.net> | 2005-12-16 14:50:32 +0000 |
commit | e17430e145b0e908ed05ac07bff04fcd5122523b (patch) | |
tree | f2020d8e767753718f5304580f7c28ec678a9bd3 /ext/mbstring/mbstring.c | |
parent | 6c8980140872b1e18204d03a16a6a3bcb35f3aee (diff) | |
download | php-git-e17430e145b0e908ed05ac07bff04fcd5122523b.tar.gz |
MF51 Ilia's last fix
fix the test appropriately
Diffstat (limited to 'ext/mbstring/mbstring.c')
-rw-r--r-- | ext/mbstring/mbstring.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/mbstring/mbstring.c b/ext/mbstring/mbstring.c index 1f7a1c98ca..14c662d8e5 100644 --- a/ext/mbstring/mbstring.c +++ b/ext/mbstring/mbstring.c @@ -1844,6 +1844,13 @@ PHP_FUNCTION(mb_strcut) } } + if (from > Z_STRLEN_PP(arg1)) { + RETURN_FALSE; + } + if (((unsigned) from + (unsigned) len) > Z_STRLEN_PP(arg1)) { + len = Z_STRLEN_PP(arg1) - from; + } + ret = mbfl_strcut(&string, &result, from, len); if (ret != NULL) { RETVAL_STRINGL(ret->val, ret->len, 0); /* the string is already strdup()'ed */ |