tony2001                Tue Aug  8 09:48:08 2006 UTC

  Modified files:              
    /php-src/ext/standard       string.c 
    /php-src/ext/standard/tests/strings strings001.phpt 
  Log:
  use memrchr/zend_memrchr instead of strrchr
  fix wrong test
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/string.c?r1=1.565&r2=1.566&diff_format=u
Index: php-src/ext/standard/string.c
diff -u php-src/ext/standard/string.c:1.565 php-src/ext/standard/string.c:1.566
--- php-src/ext/standard/string.c:1.565 Tue Aug  8 08:59:51 2006
+++ php-src/ext/standard/string.c       Tue Aug  8 09:48:08 2006
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: string.c,v 1.565 2006/08/08 08:59:51 tony2001 Exp $ */
+/* $Id: string.c,v 1.566 2006/08/08 09:48:08 tony2001 Exp $ */
 
 /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */
 
@@ -2104,13 +2104,13 @@
                int ext_len;
 
                if (path_type == IS_UNICODE) {
-                       ext.u = u_strrchr(ret.u, (UChar) 0x2e /*'.'*/);
+                       ext.u = u_memrchr32(ret.u, (UChar) 0x2e /*'.'*/, 
ret_len);
                        if (ext.u) {
                                ext.u++;
                                ext_len = ret_len - (ext.u - ret.u);
                        }
                } else {
-                       ext.s = strrchr(ret.s, '.');
+                       ext.s = zend_memrchr(ret.s, '.', ret_len);
                        if (ext.s) {
                                ext.s++;
                                ext_len = ret_len - (ext.s - ret.s);
@@ -2127,10 +2127,10 @@
                int idx;
 
                if (path_type == IS_UNICODE) {
-                       p.u = u_strrchr(ret.u, (UChar) 0x2e /*'.'*/);
+                       p.u = u_memrchr32(ret.u, (UChar) 0x2e /*'.'*/, ret_len);
                        idx = p.u ? (p.u - ret.u) : ret_len;
                } else {
-                       p.s = strrchr(ret.s, '.');
+                       p.s = zend_memrchr(ret.s, '.', ret_len);
                        idx = p.s ? (p.s - ret.s) : ret_len;
                }
 
@@ -2961,7 +2961,7 @@
                        ch = zend_get_codepoint_at(Z_USTRVAL_P(needle), 
Z_USTRLEN_P(needle), 0);
                        found = u_memrchr32(Z_USTRVAL_P(haystack), ch, 
Z_USTRLEN_P(haystack));
                } else {
-                       found = strrchr(Z_STRVAL_P(haystack), 
*Z_STRVAL_P(needle));
+                       found = zend_memrchr(Z_STRVAL_P(haystack), 
*Z_STRVAL_P(needle), Z_STRLEN_P(haystack));
                }
        } else {
                convert_to_long(needle);
@@ -2973,7 +2973,7 @@
                        }
                        found = u_memrchr32(Z_USTRVAL_P(haystack), ch, 
Z_USTRLEN_P(haystack));
                } else {
-                       found = strrchr(Z_STRVAL_P(haystack), 
(char)Z_LVAL_P(needle));
+                       found = zend_memrchr(Z_STRVAL_P(haystack), 
(char)Z_LVAL_P(needle), Z_STRLEN_P(haystack));
                }
        }
 
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/strings/strings001.phpt?r1=1.2&r2=1.3&diff_format=u
Index: php-src/ext/standard/tests/strings/strings001.phpt
diff -u php-src/ext/standard/tests/strings/strings001.phpt:1.2 
php-src/ext/standard/tests/strings/strings001.phpt:1.3
--- php-src/ext/standard/tests/strings/strings001.phpt:1.2      Sat Oct 26 
20:07:49 2002
+++ php-src/ext/standard/tests/strings/strings001.phpt  Tue Aug  8 09:48:08 2006
@@ -9,4 +9,7 @@
 ?>
 --EXPECTREGEX--
 string\(18\) \"nica\x00turska panica\"
-string\(19\) \" nica\x00turska panica\"
+string\(7\) \" panica\"
+--UEXPECTREGEX--
+unicode\(18\) \"nica\x00turska panica\"
+unicode\(7\) \" panica\"

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to