Ilija Tovilo
9b10b65e2b
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix GH-10570: Assertion `(key)->h != 0 && "Hash must be known"' failed.
2023-02-24 20:41:40 +01:00
Niels Dossche
b9a5bfc355
Fix GH-10570: Assertion `(key)->h != 0 && "Hash must be known"' failed.
...
Fixes GH-10570, see GH-10570 for analysis.
Closes GH-10572
2023-02-24 20:40:29 +01:00
Ilija Tovilo
efb9181a98
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Revert "Fix GH-10168: heap-buffer-overflow at zval_undefined_cv"
2023-02-16 14:13:17 +01:00
Ilija Tovilo
7b68ff46da
Revert "Fix GH-10168: heap-buffer-overflow at zval_undefined_cv"
...
This reverts commit 71ddede565 .
2023-02-16 14:07:17 +01:00
Bob Weinand
98b8d1c152
Merge branch 'PHP-8.1' into PHP-8.2
2023-02-13 16:34:19 +00:00
Bob Weinand
95016138a5
Fix GH-10496: Fibers must not be garbage collected while implicitly suspended by resumption of another fiber
2023-02-13 16:30:21 +00:00
Bob Weinand
0e31e03bc5
Merge branch 'PHP-8.1' into PHP-8.2
2023-02-13 13:10:08 +01:00
Arnaud Le Blanc
d721dcc2ef
Fix colletion of unfinished function call in fibers
...
Fixes GH-10496.
Co-authored-by: Bob Weinand <bobwei9@hotmail.com >
2023-02-13 13:09:04 +01:00
Ilija Tovilo
b9d1eca8fd
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Mark test as XFAIL
2023-02-11 00:21:59 +01:00
Ilija Tovilo
13c34aac05
Mark test as XFAIL
...
See https://github.com/php/php-src/pull/10546
2023-02-11 00:21:01 +01:00
Ilija Tovilo
972a5a02bd
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix GH-10168: heap-buffer-overflow at zval_undefined_cv
2023-02-08 01:12:03 +01:00
Niels Dossche
71ddede565
Fix GH-10168: heap-buffer-overflow at zval_undefined_cv
...
The problem is that we're using the variable_ptr in the opcode handler
*after* it has already been destroyed. The solution is to create a
specialised version of zend_assign_to_variable which takes in two
destination zval pointers.
Closes GH-10524
2023-02-08 01:06:50 +01:00
Bob Weinand
f732486c08
Merge branch 'PHP-8.1' into PHP-8.2
2023-01-30 12:33:06 +01:00
Bob Weinand
00be6e1aed
Look at executing generator for fiber destructor behaviour
2023-01-30 12:32:53 +01:00
Bob Weinand
e746b89bc9
Merge branch 'PHP-8.1' into PHP-8.2
2023-01-30 12:13:41 +01:00
Bob Weinand
b9bca2dadb
Fix resetting ZEND_GENERATOR_IN_FIBER flag
...
Signed-off-by: Bob Weinand <bobwei9@hotmail.com >
2023-01-30 12:13:07 +01:00
Aaron Piotrowski
0c4aee464a
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix GH-10437: Set active fiber to null on bailout (#10443 )
2023-01-28 10:16:04 -06:00
Aaron Piotrowski
284c29328e
Fix GH-10437: Set active fiber to null on bailout ( #10443 )
2023-01-28 10:13:58 -06:00
Arnaud Le Blanc
6c22dea3c1
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
[ci skip] NEWS
Fix overflow check in OnUpdateMemoryConsumption (#10456 )
Prevent dtor of generator in suspended fiber (#10462 )
2023-01-27 19:37:01 +01:00
Arnaud Le Blanc
1173c2e64a
Prevent dtor of generator in suspended fiber ( #10462 )
...
Generators that suspended a fiber should not be dtor because they will be
executed during the fiber dtor.
Fiber dtor throws an exception in the fiber's context in order to unwind and
execute finally blocks, which will also properly dtor the generator.
Fixes GH-9916
2023-01-27 19:32:25 +01:00
Arnaud Le Blanc
ab2097df48
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Handle non-INDIRECT symbol table entries in zend_fiber_object_gc() (#10386 )
2023-01-27 10:55:30 +01:00
Arnaud Le Blanc
9830204213
Handle non-INDIRECT symbol table entries in zend_fiber_object_gc() ( #10386 )
...
Fixes GH-10340
2023-01-27 10:52:42 +01:00
Bob Weinand
a6a20c9e17
Add regression test for e560592a61
...
Reproduces only under ASAN.
Signed-off-by: Bob Weinand <bobwei9@hotmail.com >
2023-01-17 11:14:00 +01:00
Arnaud Le Blanc
d89408075f
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Reduce HT_MAX_SIZE to account for the max load factor of 0.5 (#10242 )
GC fiber unfinished executions (#9810 )
2023-01-13 12:28:21 +01:00
Arnaud Le Blanc
4fb149390a
GC fiber unfinished executions ( #9810 )
2023-01-13 12:04:28 +01:00
David Carlier
884e8a970a
Merge branch 'PHP-8.1' into PHP-8.2
2023-01-12 22:01:30 +00:00
Niels Dossche
833b45ac44
Fix GH-10249: Assertion `size >= page_size + 1 * page_size' failed.
...
Co-authored-by: Changochen <changochen1@gmail.com >
Closes GH-10284
2023-01-12 22:00:00 +00:00
Christoph M. Becker
6faeb9571d
Fix recently introduced gh10251.phpt
...
As of PHP 8.2.0, creation of dynamic properties is deprecated, so we
slap a `AllowDynamicProperties` attribute on the class.
2023-01-08 18:07:21 +01:00
George Peter Banyard
e308dc0635
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix GH-10251: Assertion `(flag & (1<<3)) == 0' failed.
Fix GH-9710: phpdbg memory leaks by option "-h"
2023-01-08 16:11:46 +00:00
Niels Dossche
d03025bf59
Fix GH-10251: Assertion `(flag & (1<<3)) == 0' failed.
...
zend_get_property_guard previously assumed that at least "str" has a
pre-computed hash. This is not always the case, for example when a
string is created by bitwise operations, its hash is not set. Instead of
forcing a computation of the hashes, drop the hash comparison.
Closes GH-10254
Co-authored-by: Changochen <changochen1@gmail.com >
Signed-off-by: George Peter Banyard <girgias@php.net >
2023-01-08 16:09:59 +00:00
Niels Dossche
df96346f9c
Move test for GH-10200 to the simplexml extension test directory
...
Closes GH-10252
Signed-off-by: George Peter Banyard <girgias@php.net >
2023-01-07 03:07:37 +00:00
George Peter Banyard
de633c31dd
Add missing EXTENSIONS section to test file gh10200
2023-01-05 13:10:28 +00:00
Niels Dossche
c2404915e0
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 >
2023-01-02 15:46:58 +00:00
Derick Rethans
9529b8919f
Merge branch 'PHP-8.1' into PHP-8.2
2022-12-23 16:36:40 +00:00
George Peter Banyard
44add3c791
Add secondary test that registers a trampoline as a shutdown function
2022-12-23 16:34:57 +00:00
Derick Rethans
b489e0f2b8
Make sure to disable JIT when overriding execute_ex
2022-12-23 16:34:57 +00:00
Derick Rethans
233ffccc35
Fix GH-10072: PHP crashes when execute_ex is overridden and a __call trampoline is used from internal code
2022-12-23 16:34:57 +00:00
Remi Collet
bfa56cf62b
Fix #10133 set variables_order en ensure $ENV is set
2022-12-20 16:40:47 +01:00
Dmitry Stogov
f763cfd3d5
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix memory leak
2022-12-19 12:11:55 +03:00
Dmitry Stogov
683285165e
Fix memory leak
...
Fixes oss-fuzz #54320
2022-12-19 12:11:16 +03:00
Christoph M. Becker
6b1f4c5a44
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix GH-9769: Misleading error message for unpacking of objects
2022-12-02 13:11:51 +01:00
蝦米
93592ea743
Fix GH-9769: Misleading error message for unpacking of objects
...
Only arrays can be unpacked in constant expressions.
Closes GH-9776.
2022-12-02 13:10:59 +01:00
Dmitry Stogov
05b63b1593
Don't check "fake" closures (fix assertion)
...
Fixes oss-fuzz #53078
2022-11-07 12:19:54 +03:00
Arnaud Le Blanc
34a85fbea0
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
[ci skip] NEWS
[ci skip] NEWS
Fix generator memory leaks when interrupted during argument evaluation (#9756 )
2022-11-04 16:02:04 +01:00
Arnaud Le Blanc
4011657719
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
[ci skip] NEWS
Fix generator memory leaks when interrupted during argument evaluation (#9756 )
2022-11-04 15:59:14 +01:00
Arnaud Le Blanc
5d1f3e047c
Fix generator memory leaks when interrupted during argument evaluation ( #9756 )
2022-11-04 15:55:55 +01:00
Ilija Tovilo
cc9dddea38
Fix fake closure leaking when called from internal func
...
Introduced in 8e49d7f32f .
ZEND_CALL_RELEASE_THIS was previously not handled for internal calls but
just for user calls in the zend_leave_helper.
Closes GH-9884
2022-11-03 14:31:47 +01:00
Dmitry Stogov
482ae71fda
Fix memory leak
2022-10-31 12:20:28 +03:00
Arnaud Le Blanc
cfd5fb98e4
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
[ci skip] NEWS
[ci skip] NEWS
Fix compilation warning
Fix crash when memory limit is exceeded during generator initialization
2022-10-22 10:44:55 +02:00
Arnaud Le Blanc
ebe58459aa
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
[ci skip] NEWS
Fix compilation warning
Fix crash when memory limit is exceeded during generator initialization
2022-10-22 10:44:06 +02:00