summaryrefslogtreecommitdiff
path: root/Zend/zend_execute_API.c
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2019-09-11 16:30:59 +0200
committerNikita Popov <nikita.ppv@gmail.com>2019-09-11 16:30:59 +0200
commit403396e42c03b667e978cc8985334d4c6046749a (patch)
treed9ad2831cb2933c01048fdcbaf019949d2469777 /Zend/zend_execute_API.c
parent7992a712a97c4ca2ed77ef724d46f06855c718e4 (diff)
parent270e5e3c5b7b6bf39dfbef67381990b553a52a96 (diff)
downloadphp-git-403396e42c03b667e978cc8985334d4c6046749a.tar.gz
Merge branch 'PHP-7.4'
Diffstat (limited to 'Zend/zend_execute_API.c')
-rw-r--r--Zend/zend_execute_API.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c
index 7bc830da2b..7544fdb141 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -863,8 +863,12 @@ ZEND_API zend_class_entry *zend_lookup_class_ex(zend_string *name, zend_string *
zend_string_release_ex(lc_name, 0);
}
ce = (zend_class_entry*)Z_PTR_P(zv);
- if (UNEXPECTED(!(ce->ce_flags & ZEND_ACC_LINKED)) &&
- !(flags & ZEND_FETCH_CLASS_ALLOW_UNLINKED)) {
+ if (UNEXPECTED(!(ce->ce_flags & ZEND_ACC_LINKED))) {
+ if ((flags & ZEND_FETCH_CLASS_ALLOW_UNLINKED) ||
+ ((flags & ZEND_FETCH_CLASS_ALLOW_NEARLY_LINKED) &&
+ (ce->ce_flags & ZEND_ACC_NEARLY_LINKED))) {
+ return ce;
+ }
return NULL;
}
return ce;