From: Dmitry Stogov Date: Tue, 5 May 2015 09:57:30 +0000 (+0300) Subject: Removed check for count() in SXE class X-Git-Tag: PRE_PHP7_NSAPI_REMOVAL~93^2~13 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=17e4c628729946a7e9aaa32feb5b6640defe7fe7;p=php Removed check for count() in SXE class --- diff --git a/ext/simplexml/simplexml.c b/ext/simplexml/simplexml.c index e71fadaa13..a10def195e 100644 --- a/ext/simplexml/simplexml.c +++ b/ext/simplexml/simplexml.c @@ -2136,17 +2136,21 @@ static zend_function* php_sxe_find_fptr_count(zend_class_entry *ce) { zend_function *fptr_count = NULL; zend_class_entry *parent = ce; + int inherited = 0; while (parent) { if (parent == sxe_class_entry) { break; } parent = parent->parent; + inherited = 1; } - fptr_count = zend_hash_str_find_ptr(&ce->function_table, "count", sizeof("count") - 1); - if (fptr_count->common.scope == parent) { - fptr_count = NULL; + if (inherited) { + fptr_count = zend_hash_str_find_ptr(&ce->function_table, "count", sizeof("count") - 1); + if (fptr_count->common.scope == parent) { + fptr_count = NULL; + } } return fptr_count;