Revision tags: php-8.1.4RC1, php-8.0.17RC1 |
|
#
5ca2dd3d |
| 28-Feb-2022 |
Dmitry Stogov |
Fixed assertion after clobbering object by user error handler, because of creation dynamic property deprecation warning. Fixes oss-fuzz #44932
|
Revision tags: php-8.1.3, php-8.0.16, php-7.4.28, php-8.1.3RC1, php-8.0.16RC1 |
|
#
f1ae1350 |
| 28-Jan-2022 |
Dmitry Stogov |
Fix memory leak Fixes oss-fuzz #43988
|
Revision tags: php-8.1.2, php-8.0.15, php-8.1.2RC1, php-8.0.15RC1 |
|
#
5d6bc250 |
| 22-Dec-2021 |
Dmitry Stogov |
Reset Bucket->key of deleted HastTable elemets to NULL. This allows elimination of some Z_ISUNDEF(Bucket->val) checks.
|
Revision tags: php-8.0.14, php-8.1.1, php-7.4.27, php-8.1.1RC1, php-8.0.14RC1 |
|
#
024d5f4b |
| 01-Dec-2021 |
Tyson Andre |
Cache method overrides of ArrayAccess in zend_class_entry Previously, code such as subclasses of SplFixedArray would check for method overrides when instantiating the objects. T
Cache method overrides of ArrayAccess in zend_class_entry Previously, code such as subclasses of SplFixedArray would check for method overrides when instantiating the objects. This optimization was mentioned as a followup to GH-6552
show more ...
|
Revision tags: php-7.4.27RC1 |
|
#
f0dd79a7 |
| 28-Nov-2021 |
Nikita Popov |
Optimize ArrayAccess method lookup While these currently aren't cached in the class entry, we can at least save us a lowercasing and hash calculation of the method name.
|
Revision tags: php-8.1.0, php-8.0.13, php-7.4.26, php-7.3.33, php-8.1.0RC6, php-7.4.26RC1, php-8.0.13RC1, php-8.1.0RC5, php-7.3.32, php-7.4.25, php-8.0.12, php-8.1.0RC4 |
|
#
902d6439 |
| 11-Oct-2021 |
Nikita Popov |
Deprecate implicit dynamic properties Writing to a proprety that hasn't been declared is deprecated, unless the class uses the #[AllowDynamicProperties] attribute or defines __get()/
Deprecate implicit dynamic properties Writing to a proprety that hasn't been declared is deprecated, unless the class uses the #[AllowDynamicProperties] attribute or defines __get()/__set(). RFC: https://wiki.php.net/rfc/deprecate_dynamic_properties
show more ...
|
#
ef2fd0e5 |
| 24-Nov-2021 |
Remi Collet |
fix [-Wstrict-prototypes] buid warnings
|
#
ddaf64b5 |
| 14-Oct-2021 |
Dmitry Stogov |
Avoid non-immutable map_ptr indirection
|
Revision tags: php-8.0.12RC1, php-7.4.25RC1, php-8.1.0RC3 |
|
#
f81f8744 |
| 28-Sep-2021 |
Dmitry Stogov |
zend_std_get_static_method() should return NULL in case of exception thrown from user error handler
|
Revision tags: php-8.0.11, php-7.4.24, php-7.3.31 |
|
#
47961839 |
| 17-Sep-2021 |
Nikita Popov |
Add missing scope check for readonly prop initialization If the initializing assignment is an array append we will go through the UNDEF codepath of get_property_ptr_ptr, which did not ve
Add missing scope check for readonly prop initialization If the initializing assignment is an array append we will go through the UNDEF codepath of get_property_ptr_ptr, which did not verify that the initialization scope is valid.
show more ...
|
Revision tags: php-8.1.0RC2, php-7.4.24RC1, php-8.0.11RC1, php-8.1.0RC1, php-7.4.23, php-8.0.10, php-7.3.30, php-8.1.0beta3, php-8.0.10RC1, php-7.4.23RC1, php-8.1.0beta2, php-8.0.9, php-7.4.22 |
|
#
3eb97a45 |
| 22-Jul-2021 |
Nikita Popov |
Always use separate static_members_table When running without opcache, static_members_table is shared with default_static_members_table. This is visible in reflection output, because
Always use separate static_members_table When running without opcache, static_members_table is shared with default_static_members_table. This is visible in reflection output, because ReflectionProperty::getDefaultValue() will return the current value, rather than the default value. Address this by never sharing the table, which matches the behavior we already see under opcache. Fixes bug #80821. Closes GH-7299.
show more ...
|
#
ae8647d9 |
| 20-Jul-2021 |
Levi Morrison |
Remove leading underscore for _zend_hash_find_known_hash (#7260) Convert zend_hash_find_ex(..., 1) to zend_hash_find_known_hash(...) Convert zend_hash_find_ex(..., 0) to zend_hash_find(.
Remove leading underscore for _zend_hash_find_known_hash (#7260) Convert zend_hash_find_ex(..., 1) to zend_hash_find_known_hash(...) Convert zend_hash_find_ex(..., 0) to zend_hash_find(...) Also add serializable changes to UPGRADING.INTERNALS summary
show more ...
|
Revision tags: php-8.1.0beta1 |
|
#
c50f4dec |
| 20-Jul-2021 |
Nikita Popov |
Fix typo in comment [ci skip]
|
Revision tags: php-7.4.22RC1, php-8.0.9RC1, php-8.1.0alpha3, php-7.4.21, php-7.3.29, php-8.0.8, php-8.1.0alpha2, php-7.4.21RC1, php-8.0.8RC1, php-8.1.0alpha1 |
|
#
6780aaa5 |
| 02-Jun-2021 |
Nikita Popov |
Implement readonly properties Add support for readonly properties, for which only a single initializing assignment from the declaring scope is allowed. RFC: https://wiki.php.net
Implement readonly properties Add support for readonly properties, for which only a single initializing assignment from the declaring scope is allowed. RFC: https://wiki.php.net/rfc/readonly_properties_v2 Closes GH-7089.
show more ...
|
#
ebd3a210 |
| 15-Jul-2021 |
Nikita Popov |
Undef slot before destroying in unset_property We need to make sure that destructors can't access the partially destroyed property. Do the same we do in HTs. Fixes oss-fuzz #362
Undef slot before destroying in unset_property We need to make sure that destructors can't access the partially destroyed property. Do the same we do in HTs. Fixes oss-fuzz #36205.
show more ...
|
#
5f8ed776 |
| 12-Jul-2021 |
Nikita Popov |
Fix GC of object properties HT We partially fixed this in bug #78379, but still don't handle the case where the properties array is marked as grey first, which causes a delref to not
Fix GC of object properties HT We partially fixed this in bug #78379, but still don't handle the case where the properties array is marked as grey first, which causes a delref to not be performed later. Fix this by treating the object properties HT the same way as other refcounted values, including addrefs/delrefs. The object dtor code already handles properties HT with NULL GC type, so out of order destruction should not be a problem. Fixes oss-fuzz #36023.
show more ...
|
#
a80360db |
| 09-Jul-2021 |
Nikita Popov |
Deprecate direct access to static trait members Static trait members may only be accessed through a class in which the trait is used, not directly on the trait. A complication h
Deprecate direct access to static trait members Static trait members may only be accessed through a class in which the trait is used, not directly on the trait. A complication here is that we should not store static methods/properties for which a deprecation is triggered in a cache slot. As the check for this is simple and cheap, I'm handling this in the cache slot population code in the VM. The alternative would be to pass the cache slot down into the fetching code. Part of https://wiki.php.net/rfc/deprecations_php_8_1.
show more ...
|
#
cdbe39b1 |
| 09-Jul-2021 |
Nikita Popov |
Remove unnecessary property name unmangling The property name isn't mangled in this context. Unmangling would only be necessary if we used the name stored in the property_info.
|
#
2fe242db |
| 09-Jul-2021 |
Nikita Popov |
Remove leftover handling of PHP4 constructors This seems to be mapping ParentClass::ParentClass() to ParentClass::__construct(), but only for non-__construct ctors, which don't exist
Remove leftover handling of PHP4 constructors This seems to be mapping ParentClass::ParentClass() to ParentClass::__construct(), but only for non-__construct ctors, which don't exist anymore.
show more ...
|
#
bdc60fa7 |
| 02-Jul-2021 |
Nikita Popov |
Fixed bug #80173 The analysis in the bug report wasn't correct (at least not in this case -- there may still be a more general problem here), the issue was that write_property return
Fixed bug #80173 The analysis in the bug report wasn't correct (at least not in this case -- there may still be a more general problem here), the issue was that write_property returned the original variable_ptr rather than the zend_assign_to_variable() return value, which will DEREF the variable before overwriting it.
show more ...
|
Revision tags: php-8.0.7, php-7.4.20 |
|
#
a76d35ab |
| 25-May-2021 |
Nikita Popov |
Remove commented code from get_method handler
|
Revision tags: php-8.0.7RC1, php-7.4.20RC1, php-8.0.6 |
|
#
398cfb98 |
| 04-May-2021 |
Nikita Popov |
Don't treat failed assignment as initialization Only reset the uninitialized property flag once the type check has succeeded. Previously the property was treated as unset rather than
Don't treat failed assignment as initialization Only reset the uninitialized property flag once the type check has succeeded. Previously the property was treated as unset rather than uninitialized after a failed assignment. Noticed this edge-case while working on accessors...
show more ...
|
Revision tags: php-7.4.19, php-7.4.18, php-7.3.28, php-8.0.5, php-8.0.5RC1, php-7.4.18RC1 |
|
#
462da6e0 |
| 31-Mar-2021 |
Josh Soref |
Fix spelling and grammar mistakes This PR corrects misspellings identified by the check-spelling action. The misspellings have been reported at jsoref@b6ba3e2#commitcomment-48946465
Fix spelling and grammar mistakes This PR corrects misspellings identified by the check-spelling action. The misspellings have been reported at jsoref@b6ba3e2#commitcomment-48946465 The action reports that the changes in this PR would make it happy: jsoref@602417c Closes GH-6822.
show more ...
|
Revision tags: php-8.0.4RC1, php-7.4.17RC1, php-8.0.3, php-7.4.16, php-8.0.3RC1, php-7.4.16RC1, php-8.0.2, php-7.4.15, php-7.3.27, php-8.0.2RC1, php-7.4.15RC2, php-7.4.15RC1, php-8.0.1, php-7.4.14, php-7.3.26, php-7.4.14RC1, php-8.0.1RC1, php-7.3.26RC1, php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1, php-7.2.34, php-8.0.0rc1 |
|
#
5caaf40b |
| 29-Sep-2020 |
George Peter Banyard |
Introduce pseudo-keyword ZEND_FALLTHROUGH And use it instead of comments
|
#
9da66e6a |
| 01-Mar-2021 |
Dmitry Stogov |
Optimized object conversion to array without rebulding properties HashTable
|