From e7752216f415a97e2cf4a91e58f6eb775598a1c4 Mon Sep 17 00:00:00 2001 From: Andrei Zmievski Date: Wed, 25 Jan 2006 00:02:23 +0000 Subject: [PATCH] Use zend_codepoint_to_uchar() macro. --- ext/standard/string.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/ext/standard/string.c b/ext/standard/string.c index 7102fbc67f..7194f804c1 100644 --- a/ext/standard/string.c +++ b/ext/standard/string.c @@ -2278,15 +2278,8 @@ PHP_FUNCTION(strpos) php_error(E_WARNING, "Needle argument codepoint value out of range (0 - 0x10FFFF)"); RETURN_FALSE; } - /* supplementary codepoint values may require 2 UChar's */ - if (U_IS_BMP(Z_LVAL_PP(needle))) { - u_needle_char[n_len++] = (UChar) Z_LVAL_PP(needle); - u_needle_char[n_len] = 0; - } else { - u_needle_char[n_len++] = (UChar) U16_LEAD(Z_LVAL_PP(needle)); - u_needle_char[n_len++] = (UChar) U16_TRAIL(Z_LVAL_PP(needle)); - u_needle_char[n_len] = 0; - } + n_len += zend_codepoint_to_uchar(Z_LVAL_PP(needle), u_needle_char); + u_needle_char[n_len] = 0; /* locate the codepoint at the specified offset */ U16_FWD_N((UChar*)haystack, cp_offset, haystack_len, offset); -- 2.50.1