From ce66e1eb8d6979a9414ee1ae9f15399edaadaab9 Mon Sep 17 00:00:00 2001 From: Rui Hirokawa Date: Tue, 23 Sep 2003 02:47:06 +0000 Subject: fixed wrong string length in mbregex. --- ext/mbstring/php_mbregex.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'ext/mbstring/php_mbregex.c') diff --git a/ext/mbstring/php_mbregex.c b/ext/mbstring/php_mbregex.c index 18687f7477..4a4756bcc2 100644 --- a/ext/mbstring/php_mbregex.c +++ b/ext/mbstring/php_mbregex.c @@ -653,8 +653,12 @@ static void _php_mb_regex_ereg_replace_exec(INTERNAL_FUNCTION_PARAMETERS, int op } } else { /* nomatch */ /* stick that last bit of string on our output */ - if ((UChar *)(string + string_len) > pos) - smart_str_appendl(&out_buf, pos, (size_t)((UChar *)(string + string_len) - pos)); + int l = (UChar *)(string + string_len) - pos; + if (l > 0) { + smart_str_appendl(&out_buf, pos, l); + } else { + out_buf.len += l; + } } php_mb_regex_region_free(regs, 0); } -- cgit v1.2.1