You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The crash is from destructor reentry while the outer unserialize context is already being destroyed. The nested unserialize() call can reuse that outer context after one of its var entry blocks has been freed. The patch clears the outer context before running the final cleanup, so reentrant calls allocate their own context instead.
Activity
prateekbhujel commentedon Apr 22, 2026
Opened #21828 with a fix.
The crash is from destructor reentry while the outer unserialize context is already being destroyed. The nested
unserialize()call can reuse that outer context after one of its var entry blocks has been freed. The patch clears the outer context before running the final cleanup, so reentrant calls allocate their own context instead.Fix phpGH-21824: Avoid unserialize context reuse during cleanup
Add destructor-hazard sections to defer reentrant destructors