1
0
mirror of https://github.com/php/php-src.git synced 2026-04-25 08:58:28 +02:00
Commit Graph

6243 Commits

Author SHA1 Message Date
Saki Takamachi 68abd9c138 Update versions for PHP 8.4.7RC1 2025-04-22 22:18:46 +09:00
Niels Dossche 29a5adc6af Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix some leaks in php_scandir
2025-04-21 13:21:12 +02:00
Niels Dossche 81d9a27c47 Fix some leaks in php_scandir
Closes GH-18371.
2025-04-21 13:20:45 +02:00
David Carlier dc93f28381 Merge branch 'PHP-8.3' into PHP-8.4 2025-04-02 12:36:08 +01:00
David Carlier 2e47442a6b Fix GH-18212: fseek with SEEK_CUR and negative offset crash on debug
Triggers the assertion as with SEEK_CUR the stream position is set to a
negative value so we force the failure without affecting its position
instead.

close GH-18224
2025-04-02 12:34:50 +01:00
Arnaud Le Blanc 9b96ea1a99 GDB: Import gdb.printing
gdb.printing is not imported by default since version 16, for some reason
2025-03-27 16:31:28 +01:00
Jakub Zelenka b57f425cfe PHP 8.3 is now for PHP 8.3.21-dev 2025-03-25 22:09:16 +01:00
Calvin Buckley 9d0c492d30 Bump for 8.4.7-dev 2025-03-25 16:38:46 -03:00
Eric Mann 517d7d909d PHP-8.3 is now for PHP-8.3.20-dev 2025-03-12 06:34:55 -07:00
Eric Mann 00a772bf94 PHP-8.3 is now for PHP 8.3.19-dev 2025-02-25 09:20:39 -08:00
Saki Takamachi 1ec469d116 PHP-8.4 is now for PHP 8.4.6-dev 2025-02-26 00:02:20 +09:00
Jakub Zelenka ed00c1d74b Merge branch 'PHP-8.3' into PHP-8.4 2025-02-24 23:22:47 +01:00
Jakub Zelenka 930624899b Fix bug #72666: stat cache not cleared for plain paths
This adds more aggressive clearing of stat cache. It is added to the
filestat as well as plain wrapper operations which covers stream file
accessing as well as exec functions (using pipes). It should hopefully
fix the most visible issues with the stat cache.

Closes GH-17681
2025-02-24 23:21:45 +01:00
David Carlier eabbb1c1c6 Merge branch 'PHP-8.3' into PHP-8.4 2025-02-15 10:12:20 +00:00
David Carlier 0f63bee3e9 Fix GH-17797: zend_test_compile_string crash on invalid script path.
When looking for the last slash of the script path, it leads to
underflow being promoted to SIZE_MAX being way beyond MAXPATHLEN.

close GH-17801
2025-02-15 10:11:27 +00:00
Niels Dossche 8f8d4be5eb Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix zlib support for large files
  Fix memory leak on overflow in _php_stream_scandir()
2025-02-14 23:10:40 +01:00
Niels Dossche 678ecff980 Fix memory leak on overflow in _php_stream_scandir()
On overflow, only the array is freed, but not the strings.

Closes GH-17789.
2025-02-14 23:08:43 +01:00
Jakub Zelenka c4b678fa70 PHP-8.3 is now for PHP 8.3.18-dev 2025-01-28 19:45:52 +01:00
Calvin Buckley ef2c371f13 PHP-8.4 is now for PHP 8.4.5-dev 2025-01-28 13:27:39 -04:00
Eric Mann 717b75cb43 PHP-8.3 is now for PHP-8.3.17-dev 2024-12-31 08:46:21 -08:00
Saki Takamachi fc10c1d13d PHP-8.4 is now for PHP 8.4.4-dev 2025-01-01 00:49:12 +09:00
Christoph M. Becker a8ffabfc91 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-17067: glob:// wrapper doesn't cater to CWD for ZTS builds
2024-12-18 13:04:10 +01:00
Christoph M. Becker 53b69ba8cf Fix GH-17067: glob:// wrapper doesn't cater to CWD for ZTS builds
`glob(3)` doesn't know the virtual CWD of PHP, so we need to pass an
absolute path for ZTS builds.  In lack of a reusable routine, we copy
the code from `glob()` and adapt as needed.

Closes GH-17074.
2024-12-18 13:02:48 +01:00
Jakub Zelenka b1e3dcf88a PHP-8.3 is now for PHP 8.3.16-dev 2024-12-03 18:45:43 +01:00
Calvin Buckley f12cd1985e PHP-8.4 is now for PHP-8.4.3-dev 2024-12-03 11:27:18 -04:00
Niels Dossche c06a1a44f7 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-16998: UBSAN warning in rfc1867
2024-12-01 11:00:17 +01:00
Niels Dossche 4eaa6f9d4e Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix GH-16998: UBSAN warning in rfc1867
2024-12-01 10:59:59 +01:00
Niels Dossche aab784263d Fix GH-16998: UBSAN warning in rfc1867
The "else branch" of `next_line` can reset the `buf_begin` field to
NULL, causing the next invocation to pass NULL to `memchr` with a 0
length. When UBSAN is enabled this causes an UBSAN abort. Real world
impact is likely none because of the 0 length.

To fix this, don't set the pointer to NULL, which means that the
`memchr` will return NULL and since
`self->bytes_in_buffer < self->bufsize` we return NULL and request more
data through `fill_buffer`. That function will reset `buf_begin` and
`bytes_in_buffer` so that the next invocation works fine.

I chose this solution so we have an invariant that `buf_begin` is never
NULL, which makes reasoning easier. An alternative solution is keeping
the NULLing of `buf_begin` and add an extra check at the top of
`next_line`, but I didn't like special casing this.

Closes GH-17000.
2024-12-01 10:59:30 +01:00
Jakub Zelenka 8d25978d65 Merge branch 'PHP-8.3' into PHP-8.4 2024-11-29 08:06:10 +01:00
Jakub Zelenka 6f05d96a2b Merge branch 'PHP-8.2' into PHP-8.3 2024-11-29 07:56:28 +01:00
Jakub Zelenka 69765d9220 Fix network connect poll interuption handling
When connecting to socket, it is possible to get EINTR. In such case,
there should be an another attempt to connect if we are not over the
timeout. The timeout should be adjusted accordingly in that case.

This fixes https://github.com/phpredis/phpredis/issues/1881

Closes GH-16606
2024-11-29 07:54:06 +01:00
Pierrick Charron fb919e885a PHP-8.4 is now for PHP 8.4.2-dev 2024-11-28 11:31:26 -05:00
Christoph M. Becker 4c5710579a Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-16849: Error dialog causes process to hang
2024-11-25 23:09:13 +01:00
Christoph M. Becker 929d42de50 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix GH-16849: Error dialog causes process to hang
2024-11-25 23:08:11 +01:00
Christoph M. Becker e75061b512 Fix GH-16849: Error dialog causes process to hang
If `_DEBUG` is set, assertion failures and errors are directed to a
debug message window by default[1].  That causes a process to hang,
since these dialogs are modal.  While we already cater to assertion
failures, errors have apparently been overlooked.

We choose a minimal fix for BC reasons; although passing `0` as
`reportMode` is undocumented, it obviously works fine for a long time.
We may consider to improve on this for the `master` branch.

[1] <https://learn.microsoft.com/en-us/cpp/c-runtime-library/reference/crtsetreportmode>

Closes GH-16850.
2024-11-25 23:04:51 +01:00
Saki Takamachi 1fd82aa13a PHP-8.4 is now for PHP 8.4.1-dev 2024-11-20 17:19:18 +09:00
Ilija Tovilo ec3de14afb Fix i386 release build warning
Closes GH-16730
2024-11-14 20:36:23 +01:00
Pierrick Charron f5895792e7 PHP-8.2 is now for PHP 8.2.27-dev 2024-11-05 12:47:25 -05:00
Eric Mann 9c79ca74ef PHP-8.3 is now for PHP-8.3.15-dev 2024-11-05 07:00:09 -08:00
Jakub Zelenka 6f868bd6db PHP-8.3 is now for PHP-8.3.14-dev 2024-10-08 19:21:43 +01:00
Sergey Panteleev 5f5824015c PHP-8.2 is now for PHP 8.2.26-dev 2024-10-08 19:53:22 +05:00
Jakub Zelenka 10d2d862a6 Merge branch 'PHP-8.3' into PHP-8.4 2024-10-06 19:43:19 +01:00
Jakub Zelenka 59816b9a73 Merge branch 'PHP-8.2' into PHP-8.3 2024-10-06 19:40:24 +01:00
Jakub Zelenka 5a47f27021 Fix GH-15395: php-fpm: zend_mm_heap corrupted with cgi-fcgi request
Closes GH-16227

Co-authored-by: David Carlier <devnexen@gmail.com>
2024-10-06 19:37:55 +01:00
David Carlier 4ad12bdd2d Merge branch 'PHP-8.3' into PHP-8.4 2024-09-30 18:11:25 +01:00
David Carlier d828308095 Merge branch 'PHP-8.2' into PHP-8.3 2024-09-30 18:11:14 +01:00
David Carlier 332b067c5e Fix GH-15937: stream timeout option overflow.
close GH-15942
2024-09-30 18:10:33 +01:00
Ben Ramsey d854a54b5f Merge branch 'PHP-8.3' into PHP-8.4 2024-09-26 14:24:13 -05:00
Ben Ramsey 6d99ccc268 Merge branch 'PHP-8.2' into PHP-8.3 2024-09-26 14:13:00 -05:00
Ben Ramsey c259c9f3f6 Merge branch 'PHP-8.1' into PHP-8.2 2024-09-26 13:13:46 -05:00