]> granicus.if.org Git - php/commitdiff
Fixed map_ptr slot sharing for trait/self
authorDmitry Stogov <dmitry@zend.com>
Wed, 10 Feb 2021 14:59:11 +0000 (17:59 +0300)
committerDmitry Stogov <dmitry@zend.com>
Wed, 10 Feb 2021 14:59:11 +0000 (17:59 +0300)
ext/opcache/zend_persist.c

index f1a7ee2ef54cda35a47b06f69a59fea205453092..139bac438b3cf1b847c03e269004f75f9ebb438b 100644 (file)
@@ -296,7 +296,7 @@ uint32_t zend_accel_get_type_map_ptr(zend_string *type_name, zend_class_entry *s
        uint32_t ret;
 
        if (zend_string_equals_literal_ci(type_name, "self")) {
-               if (!scope) {
+               if (!scope || (scope->ce_flags & ZEND_ACC_TRAIT)) {
                        return 0;
                }
                type_name = scope->name;