mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-09 08:33:28 +02:00
1. unload_a_document_and_its_descendants() now follows the spec algorithm structure: recursively unload child navigables via queued tasks (step 4), wait for them (step 5), then queue this document's own unload as a separate task (step 6). Previously, this was flattened into a single spin that unloaded all descendants and the document together, followed by a non-spec call to destroy_a_document_and_its_descendants(). 2. unload() step 19 now calls destroy() when the document is not salvageable, as the spec requires. Previously this was a no-op with a comment deferring to unload_a_document_and_its_descendants(). 3. destroy_top_level_traversable() step 2 now calls destroy_a_document_and_its_descendants() instead of destroy(). The iframe-unloading-order test, which exercises named iframe access during unload handlers (the scenario the previous logic was designed to protect), still passes. Fixes #7825
79 KiB
79 KiB