mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-08 16:12:23 +02:00
The guard for setting top-level navigation initiator origin called top_level_traversable()->parent() == nullptr, which is tautologically true: top_level_traversable() already walks to the topmost traversable, whose parent is always null. This caused the field to be set on every navigation, including child navigable navigations inside iframes. The value was also read from document_state()->origin() instead of document_state()->initiator_origin(), giving the document's own origin rather than the origin of whoever initiated the navigation. Use is_top_level_traversable() and initiator_origin() to match the spec step.
153 KiB
153 KiB