Skip to content

[pull] master from php:master#1012

Merged
pull[bot] merged 5 commits into
turkdevops:masterfrom
php:master
Jun 18, 2026
Merged

[pull] master from php:master#1012
pull[bot] merged 5 commits into
turkdevops:masterfrom
php:master

Conversation

@pull

@pull pull Bot commented Jun 18, 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 : )

iliaal added 5 commits June 18, 2026 09:29
In the long-column fetch path, when the ODBC driver reports the total
column length rather than SQL_NO_TOTAL, the result string was seeded by
copying orig_fetched_len + 1 bytes out of C->data, which holds at most
LONG_COLUMN_BUFFER_SIZE bytes from the first SQLGetData. For a column
larger than that buffer this reads past C->data. Seed only the bytes
actually present in the buffer, matching the SQL_NO_TOTAL branch; the
remainder is still fetched by the loop.

Closes GH-22349
* PHP-8.5:
  Fix heap over-read seeding the long-column buffer in pdo_odbc
When a descriptor spec entry fails to set up (unknown type, missing
mode) after an earlier entry already opened a pipe or socket,
proc_open() jumped to exit_fail without closing the descriptors it had
already opened, leaking those fds; repeated calls exhaust the process
descriptor table. Close the opened descriptors at exit_fail and drop
the now-redundant per-call close before each spawn-failure goto.

Closes GH-22311
* PHP-8.4:
  Fix file descriptor leak when proc_open() descriptor setup fails
* PHP-8.5:
  Fix file descriptor leak when proc_open() descriptor setup fails
@pull pull Bot locked and limited conversation to collaborators Jun 18, 2026
@pull pull Bot added the ⤵️ pull label Jun 18, 2026
@pull pull Bot merged commit e027c56 into turkdevops:master Jun 18, 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.

1 participant