140909 Commits

Author SHA1 Message Date
58968f6a22 Merge branch 'PHP-8.4'
* PHP-8.4:
  Backport intl test changes for ICU 77
2025-03-24 15:07:57 +01:00
72dab4a041 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Backport intl test changes for ICU 77
2025-03-24 15:07:49 +01:00
37e75a1c5f Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Backport intl test changes for ICU 77
2025-03-24 15:07:43 +01:00
d4c548cf42 Backport intl test changes for ICU 77
See GH-18125
See 8823f89a32
2025-03-24 15:07:14 +01:00
2d30c2e1ad Updated to version 2025.2 (2025b) 2025-03-24 10:06:36 +00:00
bc3d56e7fd Empty merge 2025-03-24 10:06:35 +00:00
22b2a579ba Updated to version 2025.2 (2025b) 2025-03-24 10:06:34 +00:00
9e2593a7de Empty merge 2025-03-24 10:06:33 +00:00
0c8a7a77a8 Updated to version 2025.2 (2025b) 2025-03-24 10:06:32 +00:00
345d229385 ext/dba: Reduce scope of dba_handler variables 2025-03-23 20:39:34 +00:00
076811af68 Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix segfault when evaluating const expr default value of child prop with added hooks
2025-03-23 16:35:21 +01:00
d5bdf8f508 Fix segfault when evaluating const expr default value of child prop with added hooks
Introduced by GH-17870. Not adding a NEWS entry since this is fixed in
the same version.

Fixes oss-fuzz #403816122
Closes GH-18098
2025-03-23 16:35:04 +01:00
7d4ed8af03 Fix "expecting token" error for ampersand
Currently, this is only handled for the "unexpected token" part of the
message, but not the "expected" part.

Fixes GH-18026
Closes GH-18101
2025-03-23 16:26:30 +01:00
a28fb52719 zend_vm_def: Use FREE_OP1() in ZEND_FREE handler (#18131)
This is for consistency with other opcode handlers. It does not
have an effect on the generated VM.
2025-03-22 16:34:26 +01:00
8622362394 Remove unused strcasecmp definition (#17050)
The strcasecmp usage was removed via
dc5f3b9562.
2025-03-21 18:30:22 +01:00
19a8e69476 Merge branch 'PHP-8.4'
* PHP-8.4:
  [ci skip] Make sure opcache can output in these tests
2025-03-21 16:36:02 +01:00
7d1a2d03e4 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  [ci skip] Make sure opcache can output in these tests
2025-03-21 16:35:57 +01:00
071f707a6d [ci skip] Make sure opcache can output in these tests 2025-03-21 16:35:47 +01:00
8d7cdbf427 Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix intl tests for icu 77 (#18125)
2025-03-21 14:25:23 +01:00
fe7f9571d2 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix intl tests for icu 77 (#18125)
2025-03-21 14:25:18 +01:00
8823f89a32 Fix intl tests for icu 77 (#18125) 2025-03-21 14:23:03 +01:00
484d528b40 ext/standard: Use usual not empty error for proc_open() (#18083) 2025-03-21 13:13:25 +00:00
bb265d2700 Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix GH-18107: Opcache CFG jmp optimization with try-finally breaks the exception table
2025-03-21 13:58:54 +01:00
d765b60778 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-18107: Opcache CFG jmp optimization with try-finally breaks the exception table
2025-03-21 13:57:16 +01:00
2ec8d37eb4 Fix GH-18107: Opcache CFG jmp optimization with try-finally breaks the exception table
If there's a try-finally where the try_op starts on a basic block with a
single JMP, and the JMP optimization causes that basic block to become
unreachable, then we update try_op.
In this case, there is no catch_op, so try_op is erroneously set to 0,
we should instead set it to `b->start`.

Closes GH-18110.
2025-03-21 13:56:31 +01:00
b233ed7e03 Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix GH-17836: zend_vm_gen.php shouldn't break on Windows line endings
2025-03-21 11:51:11 +01:00
8d7cb8cc21 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-17836: zend_vm_gen.php shouldn't break on Windows line endings
2025-03-21 11:51:05 +01:00
fa3c1c81d5 Fix GH-17836: zend_vm_gen.php shouldn't break on Windows line endings
Closes GH-18121.
2025-03-21 11:50:34 +01:00
3dcf36c701 Merge branch 'PHP-8.4'
* PHP-8.4:
  Fixed bug GH-13193 again
2025-03-21 11:48:22 +01:00
e98e4e39a3 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fixed bug GH-13193 again
2025-03-21 11:48:16 +01:00
447d143b9d Fixed bug GH-13193 again
Closes GH-13193.
2025-03-21 11:47:52 +01:00
b17df7a07c Merge branch 'PHP-8.4'
* PHP-8.4:
  NEWS for #66049
  NEWS for #66049
  Fix #66049 Typemap can break parsing in parse_packet_soap leading to a segfault
2025-03-21 08:26:04 +01:00
58e4adcd63 NEWS for #66049 2025-03-21 08:25:49 +01:00
1c230c27ec Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  NEWS for #66049
  Fix #66049 Typemap can break parsing in parse_packet_soap leading to a segfault
2025-03-21 08:25:23 +01:00
7e6a36889c NEWS for #66049 2025-03-21 08:25:05 +01:00
209f4c296e Fix #66049 Typemap can break parsing in parse_packet_soap leading to a segfault 2025-03-21 08:23:12 +01:00
c4a79617a9 Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix memory leak when destroying PDORow
2025-03-20 23:14:37 +01:00
0ef57501d9 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix memory leak when destroying PDORow
2025-03-20 23:14:14 +01:00
2dde07af55 Fix memory leak when destroying PDORow
This should call zend_object_std_dtor() to clean the property table etc.
This also has a semantic influence because previously weak refs were not
notified for example.

This fixes the final issue in GH-18114 (the crash was master-only and
fixed already).

Closes GH-18114.
Closes GH-18123.
2025-03-20 23:13:42 +01:00
ead36985b3 Merge branch 'PHP-8.4'
* PHP-8.4:
  [ci skip] Fix NEWS order
2025-03-20 19:14:44 +01:00
7d8e1c6e0c Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  [ci skip] Fix NEWS order
2025-03-20 19:14:14 +01:00
6af240d8da [ci skip] Fix NEWS order 2025-03-20 19:14:09 +01:00
38d6d8542b Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix GH-18112: NULL access with preloading and INI option
2025-03-20 19:12:53 +01:00
66498152f1 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-18112: NULL access with preloading and INI option
2025-03-20 19:12:47 +01:00
e9c0296240 Fix GH-18112: NULL access with preloading and INI option
Preloading shutdown calls request shutdown which will deactivate the
virtual cwd state. However, further startup code still assumes the state
that was set by virtual_cwd_startup(). So we need to reactivate it
manually.

Creating a test was a bit difficult because the INI setting I wanted to
test this with is overridden by the test runner apparently.
To reproduce the issue, create an empty file test.php and execute this
in a ZTS build:
`php -d opcache.preload=./ext/opcache/tests/preload_class_alias_2.inc -d "error_log=" -d "allow_url_include=1" test.php`

Closes GH-18117.
2025-03-20 19:12:06 +01:00
8598e55370 Merge branch 'PHP-8.4'
* PHP-8.4:
  Add test for GH-18113
2025-03-19 23:49:56 +01:00
9488684703 Add test for GH-18113
Fixed in https://github.com/dstogov/ir/pull/110 and merged via b932c267.

Closes GH-18113.
2025-03-19 23:49:43 +01:00
e1eeb483ef Fix GH-18114: pdo lazy object crash (#18116)
Since 0537968, the properties are no longer initialized.
So we call object_properties_init to handle that correctly.
Lower branches have a memory leak, but that requires a separate fix.
2025-03-19 23:43:30 +01:00
7b069790ca Merge branch 'PHP-8.4'
* PHP-8.4:
  Update IR
2025-03-20 01:11:33 +03:00
b932c267f8 Update IR
IR commit: 3d0124a06ee4321e1305f893b74840033d939e88
2025-03-20 01:10:56 +03:00