1
0
mirror of https://github.com/php/php-src.git synced 2026-04-21 23:18:13 +02:00
Commit Graph

131594 Commits

Author SHA1 Message Date
Niels Dossche e2ec59f0c4 Merge branch 'PHP-8.2'
* PHP-8.2:
  Fix GH-10611: fpm_env_init_main leaks environ
2023-03-11 16:39:23 +01:00
Niels Dossche 6a44705f4e Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix GH-10611: fpm_env_init_main leaks environ
2023-03-11 16:35:11 +01:00
Niels Dossche 71c63723c8 Fix GH-10611: fpm_env_init_main leaks environ
Closes GH-10618.
2023-03-11 16:34:41 +01:00
Niels Dossche 5c058d7b15 Merge branch 'PHP-8.2'
* PHP-8.2:
  Fix GH-10801: Named arguments in CTE functions cause a segfault
2023-03-10 19:31:19 +01:00
Niels Dossche c4508422eb Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix GH-10801: Named arguments in CTE functions cause a segfault
2023-03-10 19:27:17 +01:00
Niels Dossche 2c53d63197 Fix GH-10801: Named arguments in CTE functions cause a segfault
Fixes GH-10801

Named arguments are not supported by the constant evaluation routine, in
the sense that they are ignored. This causes two issues:
  - It causes a crash because not all oplines belonging to the call are
    removed, which results in SEND_VA{L,R} which should've been removed.
  - It causes semantic issues (demonstrated in the test case).

This case never worked anyway, leading to crashes or incorrect behaviour,
so just prevent CTE of calls with named parameters for now.
We can choose to support it later, but introducing support for this in
a stable branch seems too dangerous.

This patch does not change the removal of SEND_* opcodes in remove_call
because the crash bug can't be triggered anymore with this patch as
there are no named parameters anymore and no variadic CTE functions
exist.

Closes GH-10811.
2023-03-10 19:22:44 +01:00
Ilija Tovilo 779ab32d4f Merge branch 'PHP-8.2'
* PHP-8.2:
  [skip ci] Mark failing date test as xfail
2023-03-10 17:34:17 +01:00
Ilija Tovilo cc902530f2 [skip ci] Mark failing date test as xfail 2023-03-10 17:33:56 +01:00
Ilija Tovilo 47f80ffc77 Remove unnecessary type punnign from mysqli_api.c
value is a long. On big-endian architectures mysql_stmt_attr_get() will write to
the most significant byte. Type punning was used to move that byte to the least
significant one, which is UB. We can avoid this by simply casting to my_bool
(alias of bool). Previously, a comparison against 0 should've been done.
2023-03-10 17:15:46 +01:00
Ilija Tovilo f60dc47f36 Re-enable -Wstrict-aliasing
We're not disabling -fstrict-aliasing to it's better to keep this warning.

Closes GH-10821
2023-03-10 17:15:46 +01:00
Kévin Dunglas f0495855a3 feat: enable Zend Max Execution Timers by default in 8.3 (#10778) 2023-03-10 16:22:42 +01:00
Derick Rethans afd42610c0 Merge branch 'PHP-8.2' 2023-03-10 14:43:51 +00:00
Derick Rethans dfb8cffc59 Merge remote-tracking branch 'derickr/gh10747' into PHP-8.2 2023-03-10 14:43:44 +00:00
Derick Rethans a225581833 Fix GH-10747: Private and protected properties in serialized Date* objects throw 2023-03-10 14:39:22 +00:00
George Peter Banyard 1d9d1fe109 Merge branch 'PHP-8.2'
* PHP-8.2:
  Fix GH-10519: Array Data Address Reference Issue
2023-03-10 14:24:54 +00:00
George Peter Banyard 4808fb6932 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix GH-10519: Array Data Address Reference Issue
2023-03-10 14:24:38 +00:00
NathanFreeman 49b2ff5dbb Fix GH-10519: Array Data Address Reference Issue
We need to carry around a reference to the underlying Bucket to be able to modify it by reference.

Closes GH-10749

Signed-off-by: George Peter Banyard <girgias@php.net>
2023-03-10 14:23:30 +00:00
Ilija Tovilo 6f1e5ff8c3 Fix GC_BENCH flag (#10823)
zend_gc_globals is now hidden, so we can't access it from zend.c.
2023-03-10 15:02:22 +01:00
Kamil Tekiela 69ec3c6bc6 Merge branch 'PHP-8.2'
* PHP-8.2:
  Fix strlen error message param name

Closes GH-10784
2023-03-10 12:52:28 +00:00
Kamil Tekiela e223bf2015 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix strlen error message param name
2023-03-10 12:48:46 +00:00
Kamil Tekiela ad705afc2f Merge branch 'Fix-strlen-error-message-param-name' into PHP-8.1
* Fix-strlen-error-message-param-name:
  Fix strlen error message param name
2023-03-10 12:47:40 +00:00
Ilija Tovilo d9edda0822 [skip ci] Keep old branches on Ubuntu 20.04 on nightly 2023-03-10 11:51:12 +01:00
Ilija Tovilo 0760a57205 [skip ci] Remove references to Azure Pipelines 2023-03-10 01:32:28 +01:00
Ilija Tovilo c0ee8e833c Merge branch 'PHP-8.2'
* PHP-8.2:
  [skip ci] Fix diff cmd env name in run-tests.php
2023-03-10 01:10:55 +01:00
Ilija Tovilo d3c9585204 [skip ci] Fix diff cmd env name in run-tests.php 2023-03-10 01:10:25 +01:00
Ilija Tovilo d98963a071 Switch to Ubuntu 22.04 for GitHub actions jobs
Closes GH-10814
2023-03-10 00:17:23 +01:00
Ilija Tovilo 08e7366d0a Merge branch 'PHP-8.2'
* PHP-8.2:
  Disable asan instrumentation for phpdbg_watchpoint_userfaultfd_thread
2023-03-10 00:14:09 +01:00
Ilija Tovilo f415ba60ab Disable asan instrumentation for phpdbg_watchpoint_userfaultfd_thread
On gcc. It reports a false positive stack-overflow.

Closes GH-10818
2023-03-10 00:13:27 +01:00
David Carlier 45677081fa ext/intl: dateformatter settimezone changes on success, returning true like setcalendar.
Closes GH-10790
2023-03-09 21:45:26 +00:00
Ilija Tovilo 9982e42fee Merge branch 'PHP-8.2'
* PHP-8.2:
  Test Windows with opcache on GitHub actions
2023-03-09 19:21:42 +01:00
Ilija Tovilo 9030a0c769 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Test Windows with opcache on GitHub actions
2023-03-09 19:21:33 +01:00
Ilija Tovilo 6b884737c4 Test Windows with opcache on GitHub actions
Fixes GH-10777
2023-03-09 19:20:02 +01:00
Derick Rethans 78937c93ef Merge branch 'PHP-8.2' 2023-03-09 13:39:31 +00:00
Derick Rethans a45bef0ac6 Merge branch 'PHP-8.1' into PHP-8.2 2023-03-09 13:37:19 +00:00
Derick Rethans 2922d678aa Merge branch 'fix-variadics-macro' into PHP-8.1 2023-03-09 13:34:01 +00:00
Niels Dossche f45b3acb90 [ci skip] Add a comment to clarify the value of zend_call_info->num_args (#10812)
This surprised me a couple of times already, and it probably surprised
others too. Add a comment to clarify.
2023-03-09 13:00:21 +00:00
Derick Rethans aead0c8059 Fixed strict zpp arginfo test 2023-03-09 12:20:56 +00:00
Derick Rethans f8891f2861 Fixed strict zpp arginfo test 2023-03-09 11:40:47 +00:00
Derick Rethans 8a9b80cfe0 Add test case 2023-03-09 11:40:45 +00:00
Derick Rethans 717335ec63 Fixed macro generation for variadics, which don't have a default value 2023-03-09 11:39:22 +00:00
Máté Kocsis 574e531127 Micro optimization: readonly properties always have a type 2023-03-09 10:03:47 +01:00
George Peter Banyard afd8695a22 Suppress -Wstrict-prototypes in GD extension (#10803)
GD uses variadict functions where the signature depends on the library and types of images.
Until we can use void f(...) that was introduced in C23 suppress this warning.
2023-03-09 07:02:20 +00:00
Ilija Tovilo 4379aa0231 Merge branch 'PHP-8.2'
* PHP-8.2:
  Update libmysql 5.7 version
2023-03-08 22:18:25 +01:00
Ilija Tovilo 1616ae2fb6 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Update libmysql 5.7 version
2023-03-08 22:18:16 +01:00
Ilija Tovilo 12290b796b Update libmysql 5.7 version 2023-03-08 22:17:48 +01:00
Ilija Tovilo 0d5c794967 [skip ci] Skip PECL nightly on forks 2023-03-08 11:21:54 +01:00
Niels Dossche b39ff334a3 Merge branch 'PHP-8.2'
* PHP-8.2:
  Re-add some CTE functions that were removed from being CTE by a mistake
  Fix GH-8065: opcache.consistency_checks > 0 causes segfaults in PHP >= 8.1.5 in fpm context
  Fix GH-8646: Memory leak PHP FPM 8.1
2023-03-07 20:36:41 +01:00
Michael Voříšek 411cd04541 Re-add some CTE functions that were removed from being CTE by a mistake
These functions were accidentally removed from being CTE in GH-7780.
This patch brings them back.

Closes GH-10768.
2023-03-07 20:30:11 +01:00
Niels Dossche 7682868dd1 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix GH-8065: opcache.consistency_checks > 0 causes segfaults in PHP >= 8.1.5 in fpm context
  Fix GH-8646: Memory leak PHP FPM 8.1
2023-03-07 20:26:57 +01:00
Niels Dossche 85df512a12 Fix GH-8065: opcache.consistency_checks > 0 causes segfaults in PHP >= 8.1.5 in fpm context
Disable opcache.consistency_checks.

This feature does not work right now and leads to memory leaks and other
problems. For analysis and discussion see GH-8065. In GH-10624 it was
decided to disable the feature to prevent problems for end users.
If end users which to get some consistency guarantees, they can rely on
opcache.protect_memory.

Closes GH-10798.
2023-03-07 20:17:55 +01:00