]> granicus.if.org Git - php/commitdiff
Optimisation for zend_memnstr when the needle is only a single character. (Patch...
authorScott MacVicar <scottmac@php.net>
Mon, 21 Jul 2008 18:43:46 +0000 (18:43 +0000)
committerScott MacVicar <scottmac@php.net>
Mon, 21 Jul 2008 18:43:46 +0000 (18:43 +0000)
Zend/zend_operators.h

index 574297f142489bf5d2e54c4d62c492219d74a2c4..40ea6ea5327675328fd4823b40e8644d3b559e31 100644 (file)
@@ -231,6 +231,10 @@ zend_memnstr(char *haystack, char *needle, int needle_len, char *end)
        char *p = haystack;
        char ne = needle[needle_len-1];
 
+       if (needle_len == 1) {
+               return (char *)memchr(p, *needle, (end-p));
+       }
+
        end -= needle_len;
 
        while (p <= end) {