diff options
| author | Xinchen Hui <laruence@php.net> | 2014-06-28 00:02:50 +0800 |
|---|---|---|
| committer | Xinchen Hui <laruence@php.net> | 2014-06-28 00:02:50 +0800 |
| commit | 4fbaddb4f8b041769bea7efdd12313641387bd14 (patch) | |
| tree | 7e3a8f8fd232dd52e0a666ef5b9e9b27734ddde1 /ext/intl/grapheme/grapheme_string.c | |
| parent | f609d8c1c677d03d9ae380480ae72383c5a98106 (diff) | |
| download | php-git-4fbaddb4f8b041769bea7efdd12313641387bd14.tar.gz | |
Refactoring ext/intl (incompleted)
Diffstat (limited to 'ext/intl/grapheme/grapheme_string.c')
| -rw-r--r-- | ext/intl/grapheme/grapheme_string.c | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/ext/intl/grapheme/grapheme_string.c b/ext/intl/grapheme/grapheme_string.c index 8a094e015e..f4172636e5 100644 --- a/ext/intl/grapheme/grapheme_string.c +++ b/ext/intl/grapheme/grapheme_string.c @@ -438,7 +438,7 @@ PHP_FUNCTION(grapheme_substr) RETURN_FALSE; } - RETURN_STRINGL(((char *)sub_str), sub_str_len, 1); + RETURN_STRINGL(((char *)sub_str), sub_str_len); } ustr = NULL; @@ -528,7 +528,10 @@ PHP_FUNCTION(grapheme_substr) } /* return the allocated string, not a duplicate */ - RETURN_STRINGL(((char *)sub_str), sub_str_len, 0); + RETVAL_STRINGL(((char *)sub_str), sub_str_len); + //??? + efree(sub_str); + return; } if(length == 0) { @@ -604,7 +607,9 @@ PHP_FUNCTION(grapheme_substr) } /* return the allocated string, not a duplicate */ - RETURN_STRINGL(((char *)sub_str), sub_str_len, 0); + RETVAL_STRINGL(((char *)sub_str), sub_str_len); + //???? + efree(sub_str); } /* }}} */ @@ -650,9 +655,9 @@ static void strstr_common_handler(INTERNAL_FUNCTION_PARAMETERS, int f_ignore_cas size_t found_offset = found - haystack; if (part) { - RETURN_STRINGL(((char *)haystack) , found_offset, 1); + RETURN_STRINGL(((char *)haystack) , found_offset); } else { - RETURN_STRINGL(((char *)found), haystack_len - found_offset, 1); + RETURN_STRINGL(((char *)found), haystack_len - found_offset); } } @@ -671,10 +676,10 @@ static void strstr_common_handler(INTERNAL_FUNCTION_PARAMETERS, int f_ignore_cas U8_FWD_N(haystack, ret_pos, haystack_len, uchar_pos); if (part) { - RETURN_STRINGL(((char *)haystack), ret_pos, 1); + RETURN_STRINGL(((char *)haystack), ret_pos); } else { - RETURN_STRINGL(((char *)haystack) + ret_pos, haystack_len - ret_pos, 1); + RETURN_STRINGL(((char *)haystack) + ret_pos, haystack_len - ret_pos); } } @@ -895,7 +900,7 @@ PHP_FUNCTION(grapheme_extract) if ( NULL != next ) { ZVAL_LONG(next, start+nsize); } - RETURN_STRINGL(((char *)pstr), nsize, 1); + RETURN_STRINGL(((char *)pstr), nsize); } /* convert the strings to UTF-16. */ @@ -939,7 +944,7 @@ PHP_FUNCTION(grapheme_extract) ZVAL_LONG(next, start+ret_pos); } - RETURN_STRINGL(((char *)pstr), ret_pos, 1); + RETURN_STRINGL(((char *)pstr), ret_pos); } /* }}} */ |
