Christoph M. Becker
866adb122a
Fix #81500 : Interval serialization regression since 7.3.14 / 7.4.2
...
While it may not be desired, `DateInterval::$f` supports negative
values, at least with regard to calculations. We still need to guard
from assigning double values which are out of range for signed 64bit
integers (which would be undefined behavior). zend_dval_to_lval() does
this by returning `0` instead of triggering UB. This way we can avoid
setting the invalid marker, which doesn't work as expected anyway.
We must not do that only for unserialization, but also when the property
is set in the first place.
We need to adapt some of the existing tests wrt. this behavior. In
particular, we check for an arbitrary value in bug79015.phpt, to cater
to differences between 32bit and 64bit architectures.
Closes GH-7575.
2021-10-15 19:08:07 +02:00
Remi Collet
484bf2581c
Merge branch 'PHP-8.1'
...
* PHP-8.1:
remove closing bracket in bad place
2021-10-15 16:47:13 +02:00
Remi Collet
371a268a0a
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
remove closing bracket in bad place
2021-10-15 16:46:58 +02:00
Remi Collet
9f98bc58c7
remove closing bracket in bad place
2021-10-15 16:46:35 +02:00
Dmitry Stogov
ba04bc9b8b
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Tracing JIT: propagete op1 type info of FETCH_DIM_FETCH_ARG in read mode
2021-10-15 15:37:15 +03:00
Dmitry Stogov
f8b1853816
Tracing JIT: propagete op1 type info of FETCH_DIM_FETCH_ARG in read mode
2021-10-15 15:36:27 +03:00
Dmitry Stogov
98dbae4feb
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Tracing JIT: Use information about really called internal function return type to improve type inference.
2021-10-15 12:31:33 +03:00
Dmitry Stogov
af0a980f45
Tracing JIT: Use information about really called internal function return type to improve type inference.
2021-10-15 12:30:16 +03:00
Dmitry Stogov
37dbad87f3
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT: Use more general type guard to prevent useless trace splitting
2021-10-14 23:56:43 +03:00
Dmitry Stogov
88982a1d20
JIT: Use more general type guard to prevent useless trace splitting
2021-10-14 23:55:35 +03:00
Dmitry Stogov
04cbd84192
Always use direct pointer (not map_ptr slot) to access run_time_cache of a closure instance
2021-10-14 17:21:37 +03:00
Nikita Popov
a35f72f51e
Reduce indentation
2021-10-14 16:20:02 +02:00
Nikita Popov
89007f67d4
Fix delayed early bind if class already exists
...
We should not try to perform a delayed early bind if the class has
already been declared. This matches the behavior of an ordinary
early bind.
2021-10-14 14:29:22 +02:00
Dmitry Stogov
7193909e86
JIT: Cleanup dead and duplicate code
2021-10-14 14:08:57 +03:00
Christoph M. Becker
e22b305ffb
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix #81518 : Header injection via default_mimetype / default_charset
2021-10-14 12:24:05 +02:00
Christoph M. Becker
f99c69fc2e
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix #81518 : Header injection via default_mimetype / default_charset
2021-10-14 12:23:43 +02:00
Christoph M. Becker
b7f3b67060
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #81518 : Header injection via default_mimetype / default_charset
2021-10-14 12:21:35 +02:00
Christoph M. Becker
365769366b
Fix #81518 : Header injection via default_mimetype / default_charset
...
We forbid setting these INI options to values containing NUL bytes, CR
or LF.
Closes GH-7574.
2021-10-14 12:16:19 +02:00
Dmitry Stogov
ddaf64b56c
Avoid non-immutable map_ptr indirection
2021-10-14 12:16:18 +03:00
Máté Kocsis
7cc3c7a839
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix the 2nd param name of pg_send_execute()
2021-10-13 14:21:34 +02:00
Máté Kocsis
d98634e652
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix 2nd param name of pg_send_execute()
2021-10-13 14:19:54 +02:00
Máté Kocsis
ca219d7d27
Fix 2nd param name of pg_send_execute()
...
Closes GH-7576
2021-10-13 14:14:47 +02:00
Dmitry Stogov
d31ebe6f10
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT: Fixed incorrect FETCH_OBJ_W code for typed property (ARM64 part)
2021-10-13 14:51:46 +03:00
Dmitry Stogov
28cca5d451
JIT: Fixed incorrect FETCH_OBJ_W code for typed property (ARM64 part)
2021-10-13 14:51:34 +03:00
Dmitry Stogov
23a95d9d8e
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT: Fixed incorrect FETCH_OBJ_W code for typed property
2021-10-13 14:48:52 +03:00
Dmitry Stogov
afeadc668b
JIT: Fixed incorrect FETCH_OBJ_W code for typed property
2021-10-13 14:48:06 +03:00
Remi Collet
105c2e0fcb
bump zip ext version
2021-10-13 11:54:28 +02:00
Remi Collet
b35db69d82
Merge branch 'PHP-8.1'
...
* PHP-8.1:
bump zip ext version
The PHP-8.1 branch is now for 8.1.0RC5
2021-10-13 11:54:14 +02:00
Remi Collet
8cfd7e2105
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
bump zip ext version
2021-10-13 11:53:25 +02:00
Remi Collet
6d0d5227d8
bump zip ext version
2021-10-13 11:53:02 +02:00
Joe Watkins
7699aed377
missing shutdown in observer
2021-10-13 07:12:09 +02:00
Ben Ramsey
daf6a46177
The PHP-8.1 branch is now for 8.1.0RC5
2021-10-12 18:50:51 -05:00
Nikita Popov
780db4ea42
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix incorrect access of AST_UNPACK
2021-10-12 17:17:49 +02:00
Nikita Popov
f555544faf
Fix incorrect access of AST_UNPACK
...
list_is_keyed() did not take into account that there may be
AST_UNPACK elements. These would error lateron anyway, but still
produce an invalid access here.
2021-10-12 17:16:58 +02:00
Nikita Popov
48a9c409ad
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix bug #81521
2021-10-12 16:43:40 +02:00
Nikita Popov
c5e030f3aa
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix bug #81521
2021-10-12 16:43:24 +02:00
Nikita Popov
53f89219ab
Fix bug #81521
...
The current error message is incorrect -- the problem here is not
that the property is invalid, but that these methods are unusable
prior to loading data, same as read().
2021-10-12 16:42:32 +02:00
Dmitry Stogov
f90cf31bc7
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT: Avoid generation of unused exit point for conditional braches with NULL/FALSE/TRUE operand
2021-10-12 16:59:31 +03:00
Dmitry Stogov
da05c0a84f
JIT: Avoid generation of unused exit point for conditional braches with NULL/FALSE/TRUE operand
2021-10-12 16:57:33 +03:00
Nikita Popov
a00446ca90
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Don't replace tmp with cv in YIELD argument
2021-10-12 14:27:13 +02:00
Nikita Popov
9c1d7b43e9
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Don't replace tmp with cv in YIELD argument
2021-10-12 14:27:07 +02:00
Nikita Popov
9ebe8494b8
Don't replace tmp with cv in YIELD argument
...
For by-ref generators, these may have different behavior.
Fixes oss-fuzz 6059739298004992.
2021-10-12 14:26:53 +02:00
Christoph M. Becker
6a65101367
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix #81424 : PCRE2 10.35 JIT performance regression
2021-10-12 14:23:07 +02:00
Christoph M. Becker
5356d06990
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix #81424 : PCRE2 10.35 JIT performance regression
2021-10-12 14:22:52 +02:00
Christoph M. Becker
845a67feb5
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #81424 : PCRE2 10.35 JIT performance regression
2021-10-12 14:21:09 +02:00
Christoph M. Becker
788a701e22
Fix #81424 : PCRE2 10.35 JIT performance regression
...
We backport the respective upstream fix[1] to our bundled pcre2lib plus
the follow-up fix[2] for a functional regression.
[1] <dc5f966635
>
[2] <e7af7efaa1
>
Closes GH-7573.
2021-10-12 14:19:22 +02:00
Christoph M. Becker
7d5be7b1f6
[ci skip] Merge branch 'PHP-8.1'
...
* PHP-8.1:
[ci skip] Fix NEWS
2021-10-12 14:16:23 +02:00
Christoph M. Becker
9beb584037
[ci skip] Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
[ci skip] Fix NEWS
2021-10-12 14:15:43 +02:00
Christoph M. Becker
d130f90f72
[ci skip] Fix NEWS
...
PHP 8.0.12RC1 has already been tagged a week ago, so later changes
target PHP 8.0.13.
2021-10-12 14:14:37 +02:00
Remi Collet
b060b7ae3c
Merge branch 'PHP-8.1'
...
* PHP-8.1:
[ci skip] typo
NEWS
Fix #81520 TEST_PHP_CGI_EXECUTABLE badly set in run-tests.php
2021-10-12 13:43:11 +02:00