1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00
Commit Graph

72566 Commits

Author SHA1 Message Date
Gina Peter Banyard
be1ae8ef6f Zend: add const modifiers (#19571) 2026-03-23 10:52:28 +00:00
David Carlier
00c0a9ba30 Merge branch 'PHP-8.5'
* PHP-8.5:
  ext/ffi: Fix resource leak in FFI::cdef() on symbol resolution failure.
2026-03-22 21:58:09 +00:00
David Carlier
b6b26f430a Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  ext/ffi: Fix resource leak in FFI::cdef() on symbol resolution failure.
2026-03-22 21:56:16 +00:00
David Carlier
97bb48ec2e ext/ffi: Fix resource leak in FFI::cdef() on symbol resolution failure.
and remove duplicate conditions in read/write field handlers.
close GH-21446
2026-03-22 21:55:13 +00:00
ndossche
be539d95c8 Merge branch 'PHP-8.5'
* PHP-8.5:
  Fix GH-21486: Dom\HTMLDocument parser mangles xml:space and xml:lang attributes
2026-03-22 09:58:02 +01:00
ndossche
99365b8834 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix GH-21486: Dom\HTMLDocument parser mangles xml:space and xml:lang attributes
2026-03-22 09:57:56 +01:00
ndossche
c920daa7ec Fix GH-21486: Dom\HTMLDocument parser mangles xml:space and xml:lang attributes
Closes GH-21489.
2026-03-22 09:57:26 +01:00
Ilija Tovilo
61c83f8af5 Merge branch 'PHP-8.5'
* PHP-8.5:
  [skip ci] Fix CLEAN for phar_extract2.phpt
2026-03-22 00:43:10 +01:00
Ilija Tovilo
afbca756e8 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  [skip ci] Fix CLEAN for phar_extract2.phpt
2026-03-22 00:43:04 +01:00
Ilija Tovilo
6fd46f12f5 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  [skip ci] Fix CLEAN for phar_extract2.phpt
2026-03-22 00:42:59 +01:00
Ilija Tovilo
eca83d2baf Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  [skip ci] Fix CLEAN for phar_extract2.phpt
2026-03-22 00:42:54 +01:00
Ilija Tovilo
0f544b0406 [skip ci] Fix CLEAN for phar_extract2.phpt
extract1/ is not created by this test, but by phar_extract.phpt, which can lead
to a very rare race condition.
2026-03-22 00:41:37 +01:00
ndossche
74fad61607 Add test for array_diff() array maximum
Forgot to commit this in 614b22ab.
2026-03-21 22:58:49 +01:00
Gina Peter Banyard
f40b356ad9 Use smart_str_append() if we have a zend_string* (#21414) 2026-03-21 17:06:14 +00:00
Gina Peter Banyard
4d528531be ext/spl: extract AppendIterator constructor (#21367)
The implementation of it is simple whereas spl_dual_it_construct() is extremely convoluted
2026-03-21 17:05:33 +00:00
Remi Collet
f102735d71 Merge branch 'PHP-8.5'
* PHP-8.5:
  use lexbor version from library
2026-03-21 14:29:50 +01:00
Remi Collet
d8560ad177 use lexbor version from library 2026-03-21 14:29:36 +01:00
Arshid
c524773a4f ext/ftp: Remove unreachable break (#21481) 2026-03-21 11:24:04 +00:00
Arshid
d3727f44e7 ext/pgsql: Remove unreachable break (#21482) 2026-03-21 09:39:44 +00:00
ndossche
a6a7b3923a Merge branch 'PHP-8.5'
* PHP-8.5:
  openssl: Fix missing error propagation for BIO_printf() calls
2026-03-21 10:36:04 +01:00
ndossche
0d7ce4c037 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  openssl: Fix missing error propagation for BIO_printf() calls
2026-03-21 10:35:59 +01:00
ndossche
f92d54b6b5 openssl: Fix missing error propagation for BIO_printf() calls
Since these go through a file, this can fail.
For some of these, the error is already checked but not propagated to
userland, causing a "true" return value but an incomplete file.
For others, the error is not checked and can also lead to an incomplete
file.
Solve this by always propagating failure, especially as the other write
calls are already checked for failure.

Closes GH-21360.
2026-03-21 10:35:34 +01:00
ndossche
614b22ab46 Add array size maximum to array_diff()
This silences some reports about the equivalence to array_merge()'s
issue. However, this is different as no packed fill is used in this
code, so it doesn't have the same bug that array_merge() had.

Closes GH-21449.
2026-03-21 10:20:11 +01:00
Ilija Tovilo
8c42cf473e Merge branch 'PHP-8.5'
* PHP-8.5:
  Fix expected output for bug52820.phpt
2026-03-19 13:19:07 +01:00
Ilija Tovilo
f7753608cc Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix expected output for bug52820.phpt
2026-03-19 13:19:01 +01:00
Ilija Tovilo
b97dd3318d Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix expected output for bug52820.phpt
2026-03-19 13:18:54 +01:00
Ilija Tovilo
551809576b Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix expected output for bug52820.phpt
2026-03-19 13:18:36 +01:00
Ilija Tovilo
b8b5fb074d Fix expected output for bug52820.phpt
Newer versions of curl seem to omit the "Closing connection ..." message. Make
the entire line optional.
2026-03-19 13:15:57 +01:00
Giovanni Giacobbi
103e35df7d ext/session: code refactoring - improve readability and consistency 2026-03-19 10:48:05 +00:00
Giovanni Giacobbi
d63fb997e2 ext/session: code cleanup - use single empty line except for sections 2026-03-19 10:48:05 +00:00
Giovanni Giacobbi
adba504ea8 ext/session: code cleanup - space after control flow keywords 2026-03-19 10:48:05 +00:00
Giovanni Giacobbi
3b20ccda19 ext/session: code cleanup - don't use tabs for alignments 2026-03-19 10:48:05 +00:00
Giovanni Giacobbi
a6802737b3 ext/session: code cleanup - use consistent pointer declarations 2026-03-19 10:48:05 +00:00
Giovanni Giacobbi
7b16f81651 ext/session: code cleanup - use tab for indent 2026-03-19 10:48:05 +00:00
Dmitry Stogov
db37779940 Merge branch 'PHP-8.5'
* PHP-8.5:
  Fix GH-21411: opcache_compile_file() fails to early-bind classes without parents (#21412)
2026-03-19 11:13:41 +03:00
Dmitry Stogov
aa9964eebb Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix GH-21411: opcache_compile_file() fails to early-bind classes without parents (#21412)
2026-03-19 11:13:30 +03:00
Rasmus Lerdorf
1a79ea47c5 Fix GH-21411: opcache_compile_file() fails to early-bind classes without parents (#21412) 2026-03-19 11:12:45 +03:00
Arshid
9b022c4c5c ext/standard: replace RETVAL_EMPTY_ARRAY() + return with RETURN_EMPTY_ARRAY() (#21464) 2026-03-18 05:30:03 +00:00
ndossche
a16ace8ee7 Merge branch 'PHP-8.5'
* PHP-8.5:
  Fix GH-21454: Missing write lock validation in SplHeap
2026-03-17 08:47:51 +01:00
ndossche
c9a6743b59 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix GH-21454: Missing write lock validation in SplHeap
2026-03-17 08:47:46 +01:00
ndossche
8796d75365 Fix GH-21454: Missing write lock validation in SplHeap
Closes GH-21448.
2026-03-17 08:47:20 +01:00
Dmitry Stogov
0b2d8136e3 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Update IR (#21462)
2026-03-16 22:55:26 +03:00
Dmitry Stogov
a5637221ee Update IR (#21462)
IR commit: 7fed7999743ba6a5ffc5535e786725d5577f6f34
2026-03-16 22:55:03 +03:00
Dmitry Stogov
c43880587b Update IR (#21462)
IR commit: 7fed7999743ba6a5ffc5535e786725d5577f6f34
2026-03-16 22:52:40 +03:00
Dmitry Stogov
0bd3a6b7f2 Merge branch 'PHP-8.5'
* PHP-8.5:
  Fix support for TAILCALL VM
  Fix GH-21267: JIT infinite loop on FETCH_OBJ_R with IS_UNDEF property (#21368)
2026-03-16 21:58:32 +03:00
Dmitry Stogov
00ff93d660 Fix support for TAILCALL VM 2026-03-16 21:57:40 +03:00
Dmitry Stogov
81504d3db7 Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
  Fix GH-21267: JIT infinite loop on FETCH_OBJ_R with IS_UNDEF property (#21368)
2026-03-16 21:32:27 +03:00
Ilia Alshanetsky
e1a3a4c9a4 Fix GH-21267: JIT infinite loop on FETCH_OBJ_R with IS_UNDEF property (#21368)
When the JIT defers the IS_UNDEF check for FETCH_OBJ_R to the result
type guard, the deoptimization escape path dispatches to opline->handler
via the trace_escape stub. If opline->handler has been overwritten with
JIT code (e.g. a function entry trace), this creates an infinite loop.

Fix by dispatching to the original VM handler (orig_handler from the
trace extension) instead of going through the trace_escape stub. This
avoids the extra IS_UNDEF guard on every property read while correctly
handling the rare IS_UNDEF case during deoptimization.

Also set current_op_array in zend_jit_trace_exit_to_vm so that the
blacklisted exit deoptimizer can resolve orig_handler, covering the
case where side trace compilation is exhausted.

Closes GH-21368.
2026-03-16 21:31:49 +03:00
Alexandre Daubois
a8543dfdd2 Convert remaining zend_parse_parameters_none() to ZPP (#21343) 2026-03-16 09:28:08 +01:00
Ilija Tovilo
0039af028c Propagate bind error for stream_socket_server()
When stream_socket_server() fails during bind(), we're currently only showing
"Unknown error" in the error message. Properly propagate this error for better
diagnostics.

Closes GH-21328
2026-03-16 08:53:38 +01:00