Browse Source

Cleanup checks in zend_builtin_functions.c

The EXPLICIT_ABSTRACT_CLASS comparisons are no longer necessary.
pull/1081/head
Nikita Popov 11 years ago
parent
commit
2fb85f1058
  1. 11
      Zend/zend_builtin_functions.c

11
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;
}

Loading…
Cancel
Save