History log of /PHP-8.1/ext/spl/tests/gh11972.phpt (Results 1 – 1 of 1)
Revision Date Author Comments
# 1cdcbc05 30-Aug-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix GH-11972: RecursiveCallbackFilterIterator regression in 8.1.18

When you do an assignment between two zvals (no, not zval*), you copy
all fields. This includes the additional u2 data.

Fix GH-11972: RecursiveCallbackFilterIterator regression in 8.1.18

When you do an assignment between two zvals (no, not zval*), you copy
all fields. This includes the additional u2 data. So that means for
example the Z_NEXT index gets copied, which in some cases can therefore
cause a cycle in zend_hash lookups.
Instead of doing an assignment, we should be doing a ZVAL_COPY (or
ZVAL_COPY_VALUE for non-refcounting cases). This avoids copying u2.

Closes GH-12086.

show more ...