From: Nikita Popov Date: Thu, 12 Feb 2015 22:31:01 +0000 (+0100) Subject: Cleanup checks in zend_builtin_functions.c X-Git-Tag: PRE_PHP7_EREG_MYSQL_REMOVALS~170 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2fb85f1058fd7cc7778afa5d3fef24948cbe2ac7;p=php Cleanup checks in zend_builtin_functions.c The EXPLICIT_ABSTRACT_CLASS comparisons are no longer necessary. --- diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c index dca0890b14..582296a8df 100644 --- a/Zend/zend_builtin_functions.c +++ b/Zend/zend_builtin_functions.c @@ -1381,11 +1381,10 @@ ZEND_FUNCTION(class_exists) ce = zend_hash_find_ptr(EG(class_table), lc_name); zend_string_release(lc_name); - RETURN_BOOL(ce && !((ce->ce_flags & (ZEND_ACC_INTERFACE | ZEND_ACC_TRAIT)) > ZEND_ACC_EXPLICIT_ABSTRACT_CLASS)); + } else { + ce = zend_lookup_class(class_name); } - ce = zend_lookup_class(class_name); - if (ce) { RETURN_BOOL((ce->ce_flags & (ZEND_ACC_INTERFACE | ZEND_ACC_TRAIT)) == 0); } else { @@ -1467,12 +1466,12 @@ ZEND_FUNCTION(trait_exists) ce = zend_hash_find_ptr(EG(class_table), lc_name); zend_string_release(lc_name); - RETURN_BOOL(ce && ((ce->ce_flags & ZEND_ACC_TRAIT) > ZEND_ACC_EXPLICIT_ABSTRACT_CLASS)); + } else { + ce = zend_lookup_class(trait_name); } - ce = zend_lookup_class(trait_name); if (ce) { - RETURN_BOOL((ce->ce_flags & ZEND_ACC_TRAIT) > ZEND_ACC_EXPLICIT_ABSTRACT_CLASS); + RETURN_BOOL((ce->ce_flags & ZEND_ACC_TRAIT) != 0); } else { RETURN_FALSE; }