From: Nikita Popov Date: Fri, 25 Oct 2019 14:32:14 +0000 (+0200) Subject: Merge branch 'PHP-7.4' X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e63a44dd03aae264561fff77565f4a5f9be035bd;p=php Merge branch 'PHP-7.4' * PHP-7.4: Fix bug #78226: Don't call __set() on uninitialized typed properties --- e63a44dd03aae264561fff77565f4a5f9be035bd diff --cc Zend/zend_object_handlers.c index c5fd87eb97,5ac64fffb1..492a2d3e1f --- a/Zend/zend_object_handlers.c +++ b/Zend/zend_object_handlers.c @@@ -1070,8 -1116,10 +1075,10 @@@ ZEND_API void zend_std_unset_property(z if (zobj->properties) { HT_FLAGS(zobj->properties) |= HASH_FLAG_HAS_EMPTY_IND; } - goto exit; + return; } + /* Reset the IS_PROP_UNINIT flag, if it exists. */ + Z_PROP_FLAG_P(slot) = 0; } else if (EXPECTED(IS_DYNAMIC_PROPERTY_OFFSET(property_offset)) && EXPECTED(zobj->properties != NULL)) { if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) {