Skip to content

[pull] master from php:master#1093

Merged
pull[bot] merged 14 commits into
turkdevops:masterfrom
php:master
Jul 15, 2026
Merged

[pull] master from php:master#1093
pull[bot] merged 14 commits into
turkdevops:masterfrom
php:master

Conversation

@pull

@pull pull Bot commented Jul 15, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

Girgias and others added 14 commits July 15, 2026 16:50
…#22746)

Now that arguments in warnings can be configured to always appear it is no longer necessary to use `php_error_docref2()`.
As arguments to functions are now handled globally via an INI setting.
 Fix EXIF warning format specifiers for size_t values

 Several EXIF warning messages printed `size_t` values using `%d` or `%X`,
 which does not match the argument type passed through varargs.

 Use `%zu` / `%zX` for size and offset values to avoid undefined behavior and
 make the diagnostics portable across platforms.

 No behavior change is intended apart from the corrected warning formatting.
…am functions (#22749)

Since all warnings can now display the arguments of the call, the stream layer can just piggyback on-top of it instead of the additional complexity of handling it.

This is only a first step as there is still the 1 param variant that needs to be converted.
gh20620 and bzdecompress_input_too_large each allocate ~4GB under
RUN_RESOURCE_HEAVY_TESTS; two in parallel exhaust a memory-constrained
runner and the OOM killer aborts the whole run. Mark both
--CONFLICTS-- all so run-tests executes them in isolation, matching
ext/tidy/tests/parsing_file_too_large.phpt.
* PHP-8.2:
  Fix leak on double DatePeriod::__construct() call
* PHP-8.3:
  Fix leak on double DatePeriod::__construct() call
* PHP-8.4:
  Fix leak on double DatePeriod::__construct() call
* PHP-8.5:
  Fix leak on double DatePeriod::__construct() call
SQLBindParameter recorded deferred pointers (P->outbuf, &P->len, and the
bound-parameter struct) into the ODBC statement at PDO_PARAM_EVT_ALLOC, and
P->outbuf was never freed. Both outlive the bound-parameter struct, which
PDO destroys mid-statement on execute() with an array or a rebind: the
buffer leaked and the stale binding made the next SQLExecute read freed
memory. Track output buffers on the statement and free them in the
destructor, and defer binding to execute time, resetting and rebinding the
current parameters when the set changed.

Closes GH-22735
* PHP-8.4:
  Fix pdo_odbc output-buffer leak and stale-binding out-of-bounds read
* PHP-8.5:
  Fix pdo_odbc output-buffer leak and stale-binding out-of-bounds read
@pull pull Bot locked and limited conversation to collaborators Jul 15, 2026
@pull pull Bot added the ⤵️ pull label Jul 15, 2026
@pull pull Bot merged commit 00dc391 into turkdevops:master Jul 15, 2026
1 of 3 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants