Skip to content

[pull] master from php:master - #1259

Merged
pull[bot] merged 2 commits into
turkdevops:masterfrom
php:master
Sep 10, 2026
Merged

[pull] master from php:master#1259
pull[bot] merged 2 commits into
turkdevops:masterfrom
php:master

Conversation

@pull

@pull pull Bot commented Sep 10, 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 : )

…3594)

php_iconv_stream_filter_seek() closed the filter's converter before
knowing whether a replacement could be opened, then stored the failed
iconv_open() result. That left self->cd as (iconv_t)-1 for every later
read and write, and for the iconv_close() in the filter dtor. Open the
replacement first and only swap it in on success.

Closes GH-23594
php_dom_xpath_callbacks_get_gc() traced php_ns and namespaces but not
node_list, which holds the nodes handed to and returned from php:function
callbacks, so a cycle running DOMXPath to node_list to node and back was
invisible to the collector. XSLTProcessor shares the registry and is
affected whenever a transform does not reach its own node list cleanup,
which a callback suspending a Fiber achieves. Reporting the list also makes
it reachable while being torn down, so clean_node_list() detaches the table
before destroying it; otherwise a node destructor calling
gc_collect_cycles() has the collector read and write entries that
zend_hash_destroy() already freed.

Closes GH-23596
@pull pull Bot locked and limited conversation to collaborators Sep 10, 2026
@pull pull Bot added the ⤵️ pull label Sep 10, 2026
@pull
pull Bot merged commit 0c913c2 into turkdevops:master Sep 10, 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