[php-src] Issue #7734: IntlPartsIterator key is wrong for KEY_LEFT/KEY_RIGHT
| From: | iluuu1994 | Date: | Thu, 03 Mar 2022 18:00:01 +0000 |
| Subject: | [php-src] Issue #7734: IntlPartsIterator key is wrong for KEY_LEFT/KEY_RIGHT | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-240167@lists.php.net to get a copy of this message | ||
Issue: https://github.com/php/php-src/issues/7734
Comment Author: iluuu1994
I did some more digging, the reason this works on master is because we changed how
get_iterator is inherited.
PHP-8.1:
https://github.com/php/php-src/blob/925a30979c9afac158a5970bb371d50d1d2a676e/Zend/zend_interfaces.c#L337-L342
master:
https://github.com/php/php-src/blob/51f750ea463b5677c4ac62d7657802adbc048dd1/Zend/zend_interfaces.c#L352-L362
ZEND_ACC_REUSE_GET_ITERATOR was not set for the IntlPartsIterator class
which caused get_iterator to be reset to zend_user_it_get_iterator. Adding
this flag solves the first issue. The issue described above remains and needs to be solved
separately.