Dmitry Stogov
7f74a30018
Reduce observer overhead when restoring script from opcache ( #9413 )
...
* Reduce observer overhead when restoring script from opcache
* typo
* Split loops to keep notifications in case of redeclaration errors
2022-08-25 19:49:16 +03:00
Christoph M. Becker
b485a3ec0b
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix oci8/pdo_oci random test failures when run in parallel
2022-08-25 15:22:52 +02:00
Christoph M. Becker
502c630d01
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix oci8/pdo_oci random test failures when run in parallel
2022-08-25 15:21:52 +02:00
Michael Voříšek
be4dd60c55
Fix oci8/pdo_oci random test failures when run in parallel
...
Closes GH-9424.
2022-08-25 15:20:50 +02:00
Christoph M. Becker
145525bc4c
Merge branch 'PHP-8.1'
...
* PHP-8.1:
xmlRelaxNGCleanupTypes() is deprecated as of libxml2 2.10.0
2022-08-25 15:12:40 +02:00
Christoph M. Becker
afc5ab4531
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
xmlRelaxNGCleanupTypes() is deprecated as of libxml2 2.10.0
2022-08-25 15:11:41 +02:00
Christoph M. Becker
f59754694e
xmlRelaxNGCleanupTypes() is deprecated as of libxml2 2.10.0
...
The documentation[1] suggest to call `xmlCleanupParser()` instead, but
we are not doing that for reasons[2]. Thus, we do no longer call
`xmlRelaxNGCleanupTypes()` for libxml2 ≥ 2.10.0.
[1] <https://gnome.pages.gitlab.gnome.org/libxml2/devhelp/libxml2-relaxng.html#xmlRelaxNGCleanupTypes >
[2] <https://github.com/php/php-src/commit/8742276eb3905eb97a585417000c7b8df85006d4 >
Closes GH-9417.
2022-08-25 15:10:30 +02:00
Tim Düsterhus
cbb024cb3d
Select rand_rangeXX() variant only based on the requested range ( #9418 )
...
This fixes an incompatibility when wrapping native 32-bit engines with a userland
engine. The latter always used the 64-bit range function which then used two
32-bit numbers from the underlying engine to fill the 64-bit range, whereas the
native implementation used only one.
Now the selection of the range variant only depends on the requested range. A
32-bit range uses the 32-bit variant (even for 64-bit engines), whereas a
larger range uses the 64-bit variant.
This was found in https://github.com/php/php-src/pull/9410#discussion_r953213000
2022-08-25 09:42:32 +02:00
Máté Kocsis
de90edc42c
Declare ext/oci8 constants in stubs ( #9419 )
...
Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de >
2022-08-24 21:10:20 +02:00
David CARLIER
e787d9a0dc
GH-9370: Fix opcache jit protection bits.
...
Allow mprotect to occur, pthread_jit_write_np are just to allow mprotect
flags to be used.
Closes #9371 .
2022-08-24 16:11:35 +01:00
Máté Kocsis
bc4c012611
Declare ext/standard constants in stubs - part 1 ( #9404 )
2022-08-24 16:09:48 +02:00
Máté Kocsis
10a27bc47b
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix pdo_oci tests for PHP 8.1
2022-08-24 14:40:01 +02:00
Michael Voříšek
2db2cab6ad
Fix pdo_oci tests for PHP 8.1
...
Closes GH-9051
2022-08-24 14:39:45 +02:00
Tim Düsterhus
0f696e2934
Fix rand_range32() for umax = UINT32_MAX ( #9416 )
...
* Fix rand_range32() for umax = UINT32_MAX
This was introduced in the commit that added the random extension:
4d8dd8d258 .
Resolves GH-9415
* [ci skip] Rename `$r` to `$randomizer` in gh9415.phpt
* Make gh9415.phpt deterministic
* Make gh9415.phpt compatible with 32-bit
2022-08-24 14:25:51 +02:00
Christoph M. Becker
b78c087b32
Fix typo (Paletter → Palette)
...
This also aligns the error message with upstream[1].
[1] <https://github.com/libgd/libgd/blob/gd-2.3.3/src/gd_webp.c#L182 >
Closes GH-9414.
2022-08-24 13:40:16 +02:00
Dmitry Stogov
205ad0af29
Fix coding style
2022-08-24 08:44:49 +03:00
wxue1
9f926d6b2d
Stop JIT hot spot counting ( #9343 )
...
When max_root_trace is reached, JIT in tracing mode will not
compile any new code for root trace and side trace, but
counting hot code is still going on. This patch stops counting
as soon as possible by replacing counter handler with
original handler, which increases 1.5% performance.
Signed-off-by: Wang, Xue <xue1.wang@intel.com >
Signed-off-by: Wang, Xue <xue1.wang@intel.com >
2022-08-24 08:37:49 +03:00
Tim Düsterhus
2d6a883b3a
Unify structure for ext/random's engine tests ( #9321 )
...
* Remove user_xoshiro128plusplus.phpt
This test does not exercise any of the code paths of the random extension and
thus is no value-add.
* Unify structure for ext/random's engine tests
2022-08-23 23:55:11 +02:00
Bob Weinand
396b2aab85
Wrap observer notify functions into inlined enabled checks
...
Signed-off-by: Bob Weinand <bobwei9@hotmail.com >
2022-08-23 15:22:22 +02:00
Bob Weinand
bf427b732a
Add an API to observe functions and classes being linked
...
To observe when the functions and classes start being officially available to the user
Signed-off-by: Bob Weinand <bobwei9@hotmail.com >
2022-08-23 15:22:22 +02:00
Dmitry Stogov
567213c32a
Drop range inference for IS_NULL/IS_FALSE/IS_TRUE.
...
These values not always converted to IS_LONG (e.g. by -- and ++) and
this leads to incorrect range inferene and later to incorrect JIT code
generation.
2022-08-23 11:22:31 +03:00
Dmitry Stogov
e10d2c2bf9
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix type inference
2022-08-22 21:12:49 +03:00
Dmitry Stogov
95befc786a
Fix type inference
...
Fixes oss-fuzz #50272
2022-08-22 21:11:39 +03:00
Dmitry Stogov
d8c6549974
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT: Make code generation to be consistent with register allocation
2022-08-22 20:00:44 +03:00
Dmitry Stogov
2a33280ceb
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Make code generation to be consistent with register allocation
2022-08-22 19:55:10 +03:00
Dmitry Stogov
fd74ee7e90
JIT: Make code generation to be consistent with register allocation
...
Fixes ext/opcache/tests/jit/add_014.phpt with opcache.jit=1205
2022-08-22 19:53:33 +03:00
Christoph M. Becker
9313cd899e
Don't enforce 64 hit counter on Windows
...
There is no particular need to have a 64bit hit counter on Windows.
Closes GH-9367.
2022-08-22 17:49:30 +02:00
George Peter Banyard
66aed3a86f
SameSite session cookie prop should behave like other INI settings
...
It should warn if the INI setting is changed after headers are sent or a session is not active
2022-08-22 16:09:46 +01:00
George Peter Banyard
a8f8cc207c
Check sessions are active before output emitted consistently
2022-08-22 15:45:43 +01:00
George Peter Banyard
ad3ee47c6d
Remove OnUpdateTransSid validator
...
It is more restrictive than the OnUpdateSessionBool one
2022-08-22 15:45:43 +01:00
George Peter Banyard
e9749a3c1e
Remove OnUpdateLazyWrite validator
...
It is identical to the OnUpdateSessionBool one
2022-08-22 15:45:43 +01:00
George Peter Banyard
a75de167bf
Add test for negative cookie lifetime
2022-08-22 15:45:43 +01:00
George Peter Banyard
e8e015777e
Use bool instead of int in session struct
2022-08-22 15:45:43 +01:00
Dmitry Stogov
a5d84ba0d8
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Tracing JIT: Fix incorrect guard elimination
2022-08-22 15:42:28 +03:00
Dmitry Stogov
5762fc52c6
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Tracing JIT: Fix incorrect guard elimination
2022-08-22 15:39:47 +03:00
Dmitry Stogov
c9c51eb1f1
Tracing JIT: Fix incorrect guard elimination
...
Fixes oss-fuzz #49917
2022-08-22 15:38:41 +03:00
Máté Kocsis
66c4ade0fe
Declare ext/intl constants in stubs - part 14 ( #9387 )
2022-08-22 13:20:26 +02:00
Máté Kocsis
ae95644f36
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix pdo_oci tests for PHP 8.0
2022-08-22 09:29:32 +02:00
Máté Kocsis
3e0f144b2c
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix pdo_oci tests for PHP 8.0
2022-08-22 09:28:29 +02:00
Michael Voříšek
305892580e
Fix pdo_oci tests for PHP 8.0
2022-08-22 09:25:43 +02:00
Máté Kocsis
51eb1d4f6c
Fix curl/sync_constants.php ( #9391 )
2022-08-21 18:04:33 +02:00
Máté Kocsis
f743cb0f69
Declare ext/intl constants in stubs - part 13 ( #9385 )
2022-08-21 13:12:38 +02:00
Máté Kocsis
d7383ed807
Declare ext/tidy constants in stubs ( #9383 )
2022-08-20 17:08:28 +02:00
Máté Kocsis
e6e26b444d
Declare ext/curl constants in stubs ( #9384 )
2022-08-20 11:01:40 +02:00
Christoph M. Becker
742b4bac2c
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix #79451 : DOMDocument->replaceChild on doctype causes double free
2022-08-19 18:14:48 +02:00
Christoph M. Becker
9bd9e9a867
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix #79451 : DOMDocument->replaceChild on doctype causes double free
2022-08-19 18:13:48 +02:00
NathanFreeman
6027d441c1
Fix #79451 : DOMDocument->replaceChild on doctype causes double free
...
We have to reset intSubset if replacing doctype with another doctype node.
Closes GH-9201.
Closes GH-9376.
2022-08-19 18:10:06 +02:00
David Carlier
5a9411d086
Merge branch 'PHP-8.1'
2022-08-19 16:41:06 +01:00
David Carlier
9360cd6add
Merge branch 'PHP-8.0' into PHP-8.1
2022-08-19 16:40:54 +01:00
David Carlier
52e312afb8
opcache jit fix message format for OpenBSD.
...
like macOs it requires `ll`.
Closes #9380 .
2022-08-19 16:40:29 +01:00