Skip to content

Conversation

@alexandre-daubois
Copy link
Member

@alexandre-daubois alexandre-daubois commented Dec 18, 2025

Fix #17935

@alexandre-daubois alexandre-daubois linked an issue Dec 18, 2025 that may be closed by this pull request
@ndossche
Copy link
Member

This is conceptually the same fix Ilija proposed a while ago, but this just fixes a symptom rather than the underlying problem. Please see my messages in the thread #17942

@alexandre-daubois alexandre-daubois marked this pull request as draft December 19, 2025 09:12
@alexandre-daubois alexandre-daubois changed the base branch from PHP-8.3 to master December 19, 2025 09:15
@alexandre-daubois alexandre-daubois changed the title Fix GH-17935: ArrayObject unserialize assertion failure on later modification Fix GH-17935: Add delayed separation in ArrayObject Dec 19, 2025
@alexandre-daubois
Copy link
Member Author

@ndossche I tried to implement thanks to your info on the other PR. Friendly ping @iluuu1994 as you worked on the linked PR/issue

@alexandre-daubois alexandre-daubois marked this pull request as ready for review December 19, 2025 09:49
@Girgias
Copy link
Member

Girgias commented Dec 19, 2025

I will be honest in that I don't think I can review this, I don't really understand the whole reference counting logic that got introduced other than it fixed some bugs reported by one or two people when they were playing around with ArrayObject. I also don't know if a lot of the implementation of this class could be simplified drastically when we finally get rid of using objects as backing "arrays" as it seems that a lot of internal behaviour tracking is caused by that.

@iluuu1994 iluuu1994 requested review from iluuu1994 and removed request for Girgias December 19, 2025 16:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Assertion failure Zend/zend_hash.c

3 participants