#
631bc816 |
| 06-Feb-2024 |
Ilija Tovilo |
Implement stackless internal function calls Co-authored-by: Dmitry Stogov <dmitry@zend.com> Closes GH-12461
|
#
2cde4b2e |
| 15-Jan-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-13097: Anonymous class reference in trigger_error / thrown Exception Closes GH-13153.
|
#
bedf1083 |
| 30-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Add missing NULL pointer checks related to the previous call frame
|
#
9b6afd88 |
| 25-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Make sure core module has number 0 (#12272) * Make sure core module has number 0 Some places, possibly also outside PHP, assume the core extension has module number 0. After 8a8
Make sure core module has number 0 (#12272) * Make sure core module has number 0 Some places, possibly also outside PHP, assume the core extension has module number 0. After 8a812c3fda this wasn't the case anymore as reported in [1]. Fix it by changing how the next module ID is computed. [1] https://github.com/php/php-src/pull/12246#issuecomment-1731432377 * Add assertion * Add test
show more ...
|
#
8a812c3f |
| 19-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-12215: Module entry being overwritten causes type errors in ext/dom (PHP 8.4) When we try to load an extension multiple times, we still overwrite the type, module number, and hand
Fix GH-12215: Module entry being overwritten causes type errors in ext/dom (PHP 8.4) When we try to load an extension multiple times, we still overwrite the type, module number, and handle. If the module number is used to indicate module boundaries (e.g. in reflection and in dom, see e.g. dom_objects_set_class_ex), then all sorts of errors can happen. In the case of ext/dom, OP's error happens because the following happens: - The property handler is set up incorrectly in dom_objects_set_class_ex() because the wrong module number is specified. The class highest in the hierarchy is DOMNode, so the property handler is incorrectly set to that of DOMNode instead of DOMDocument. - The documentElement property doesn't exist on DOMNode, it only exists on DOMDocument, so it tries to read using zend_std_read_property(). As there is no user property called documentElement, that read operation returns an undef value. However, the type is still checked, resulting in the strange exception. Solve this by changing the API such that the data is only overwritten if it's owned data. Closes GH-12246.
show more ...
|
#
11262320 |
| 09-Jul-2023 |
Máté Kocsis |
Deprecate calling get_class() and get_parent_class() without arguments
|
#
1a0ef2c1 |
| 06-Jul-2023 |
Ilija Tovilo |
Revert "Remove name field from the zend_constant struct (#10954)" This reverts commit f42992f580343931434dff2e4b2042ff945b48a1. Closes GH-11604
|
#
d0731934 |
| 16-Jul-2023 |
Arnaud Le Blanc |
Expose time spent collecting cycles in gc_status() (#11523)
|
#
ad1b70d6 |
| 04-Jul-2023 |
Ilija Tovilo |
Revert "Revert "Remove name field from the zend_constant struct (#10954)"" This reverts commit 9f4bd3040d2809f209d73f696b21302f311665b7.
|
#
9f4bd304 |
| 03-Jul-2023 |
Máté Kocsis |
Revert "Remove name field from the zend_constant struct (#10954)" This reverts commit f42992f580343931434dff2e4b2042ff945b48a1. Fix GH-11423
|
#
d5ad7510 |
| 08-Jun-2023 |
George Peter Banyard |
More usage of known zend_str instead of C string (#11381)
|
#
bde6f2a2 |
| 07-Jun-2023 |
Florian Engelhardt |
Fix initial array size in `gc_status()` (#11393) Small fix for the initial array size to reflect the number of items that will be added.
|
#
f42992f5 |
| 03-Apr-2023 |
Máté Kocsis |
Remove name field from the zend_constant struct (#10954) As global constant names are case-sensitive now, we don't have to store them separately above the constant table.
|
#
9d5f2f13 |
| 20-Mar-2023 |
Ilija Tovilo |
Use new ZSTR_INIT_LITERAL macro (#10879)
|
#
7c44baa3 |
| 25-Feb-2023 |
George Peter Banyard |
[skip ci] Add comments as to why no ZPP union type format is used
|
#
821fc55a |
| 22-Feb-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement GH-9826: Make class_alias() work with internal classes (#10483) We can't increase the refcount of internal classes during request time. To work around this problem we simply do
Implement GH-9826: Make class_alias() work with internal classes (#10483) We can't increase the refcount of internal classes during request time. To work around this problem we simply don't refcount aliases anymore and add a check in the destruction to skip aliases entirely. There were also some checks which checked for an alias implicitly by comparing the refcount, these have been replaced by checking the type of the zval instead.
show more ...
|
Revision tags: php-8.2.0RC1, php-8.1.10, php-8.0.23, php-8.0.23RC1, php-8.1.10RC1, php-8.2.0beta3 |
|
#
9e097822 |
| 04-Aug-2022 |
Ilija Tovilo |
Fix lineno for all constant expressions Fixes GH-8821 Closes GH-8855
|
#
7936c808 |
| 23-Jan-2023 |
Máté Kocsis |
Fix GH-8329 Print true/false instead of bool in error and debug messages (#8385)
|
#
c2404915 |
| 02-Jan-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-10200: zif_get_object_vars: Assertion `!(((__ht)->u.flags & (1<<2)) != 0)' failed. This occurs because the array of properties is a single element with an integer key, not an asso
Fix GH-10200: zif_get_object_vars: Assertion `!(((__ht)->u.flags & (1<<2)) != 0)' failed. This occurs because the array of properties is a single element with an integer key, not an associative array. Therefore it is a packed array and thus the assumption the iteration macro makes is invalid. This restores the behaviour of PHP<8.2. Closes GH-10209 Co-authored-by: Deltik <deltik@gmx.com> Signed-off-by: George Peter Banyard <girgias@php.net>
show more ...
|
#
a3d2c33b |
| 02-Jan-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-10200: zif_get_object_vars: Assertion `!(((__ht)->u.flags & (1<<2)) != 0)' failed. This occurs because the array of properties is a single element with an integer key, not an asso
Fix GH-10200: zif_get_object_vars: Assertion `!(((__ht)->u.flags & (1<<2)) != 0)' failed. This occurs because the array of properties is a single element with an integer key, not an associative array. Therefore it is a packed array and thus the assumption the iteration macro makes is invalid. This restores the behaviour of PHP<8.2. Closes GH-10209 Co-authored-by: Deltik <deltik@gmx.com> Signed-off-by: George Peter Banyard <girgias@php.net>
show more ...
|
#
77ee92a5 |
| 28-Nov-2022 |
Jorg Adam Sowa |
Remove unnecessary usage of CONST_CS Closes GH-9685.
|
#
b8811d4f |
| 04-Oct-2022 |
Tim Starling |
Add four extra fields to gc_status() (#9336) - running: true if garbage collection is currently running - protected: true if the garbage collector is protected and root additions a
Add four extra fields to gc_status() (#9336) - running: true if garbage collection is currently running - protected: true if the garbage collector is protected and root additions are forbidden - full: true if the garbage collector buffer size exceeds GC_MAX_BUF_SIZE - buffer_size: current garbage collector buffer size Documentation for existing fields: - runs: the number of times the garbage collector has been run - collected: the number of objects collected - threshold: the number of roots in the buffer which will trigger garbage collection - roots: the current number of roots in the buffer Updated manual example output: array(8) { ["running"]=> bool(false) ["protected"]=> bool(false) ["full"]=> bool(false) ["runs"]=> int(5) ["collected"]=> int(100002) ["threshold"]=> int(50001) ["buffer_size"]=> int(131072) ["roots"]=> int(0) }
show more ...
|
#
fc37a826 |
| 29-Sep-2022 |
twosee |
Fix debug backtrace frameno (#8761)
|
Revision tags: php-8.2.0beta2, php-8.1.9, php-8.0.22, php-8.1.9RC1, php-8.2.0beta1, php-8.0.22RC1, php-8.0.21, php-8.1.8, php-8.2.0alpha3, php-8.1.8RC1, php-8.2.0alpha2, php-8.0.21RC1 |
|
#
ff472ce6 |
| 21-Jun-2022 |
Tim Düsterhus |
Support the `#[\AllowDynamicProperties]` attribute in stubs (#8776) * Support the `#[\AllowDynamicProperties]` attribute in stubs * Use `#[\AllowDynamicProperties]` attribute in stu
Support the `#[\AllowDynamicProperties]` attribute in stubs (#8776) * Support the `#[\AllowDynamicProperties]` attribute in stubs * Use `#[\AllowDynamicProperties]` attribute in stubs * Disallow applying both `@strict-properties` and `#[\AllowDynamicProperties]`
show more ...
|
Revision tags: php-8.0.20, php-8.1.7, php-8.2.0alpha1, php-7.4.30, php-8.1.7RC1, php-8.0.20RC1, php-8.1.6, php-8.0.19, php-8.1.6RC1, php-8.0.19RC1, php-8.0.18, php-8.1.5, php-7.4.29, php-8.1.5RC1, php-8.0.18RC1, php-8.1.4, php-8.0.17, php-8.1.4RC1, php-8.0.17RC1, php-8.1.3, php-8.0.16, php-7.4.28, php-8.1.3RC1, php-8.0.16RC1, php-8.1.2, php-8.0.15, php-8.1.2RC1, php-8.0.15RC1 |
|
#
90851977 |
| 21-Dec-2021 |
Tim Düsterhus |
Implement the "Redacting parameters in back traces" RFC https://wiki.php.net/rfc/redact_parameters_in_back_traces |