]> granicus.if.org Git - php/commitdiff
Fixed crashes in ZTS build introduced by 689c6fb188c9dfe5e428492b4b80f8d6f586a7e5
authorDmitry Stogov <dmitry@zend.com>
Tue, 18 Sep 2018 13:49:58 +0000 (16:49 +0300)
committerDmitry Stogov <dmitry@zend.com>
Tue, 18 Sep 2018 13:49:58 +0000 (16:49 +0300)
Zend/zend_compile.c

index 69f09fa0781362564b2550146c49ef45489e7d7b..a9c736e752cb67d9ed1e9961dd80303d282c80a1 100644 (file)
@@ -6349,13 +6349,13 @@ void zend_compile_class_decl(zend_ast *ast, zend_bool toplevel) /* {{{ */
                                ) {
                                if (EXPECTED(zend_hash_add_ptr(CG(class_table), lcname, ce) != NULL)) {
                                        CG(zend_lineno) = decl->end_lineno;
+                                       ce->ce_flags |= ZEND_ACC_LINKED;
                                        zend_do_inheritance(ce, parent_ce);
                                        if ((ce->ce_flags & (ZEND_ACC_IMPLICIT_ABSTRACT_CLASS|ZEND_ACC_INTERFACE|ZEND_ACC_TRAIT|ZEND_ACC_EXPLICIT_ABSTRACT_CLASS)) == ZEND_ACC_IMPLICIT_ABSTRACT_CLASS) {
                                                zend_verify_abstract_class(ce);
                                        }
                                        CG(zend_lineno) = ast->lineno;
                                        zend_string_release(lcname);
-                                       ce->ce_flags |= ZEND_ACC_LINKED;
                                        return;
                                }
                        }