From cf9f0edb91674280d1494f62a9d9a334c34a6dc8 Mon Sep 17 00:00:00 2001 From: Jonathan Gamble <101470903+schlawg@users.noreply.github.com> Date: Mon, 13 Apr 2026 17:13:19 -0500 Subject: [PATCH] LibWeb: Correct initiator origin logic for new top level traversables --- .../LibWeb/HTML/TraversableNavigable.cpp | 2 +- ...pen-about-blank-inherits-opener-origin.txt | 3 ++ ...en-about-blank-inherits-opener-origin.html | 42 +++++++++++++++++++ 3 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 Tests/LibWeb/Text/expected/HTML/window-open-about-blank-inherits-opener-origin.txt create mode 100644 Tests/LibWeb/Text/input/HTML/window-open-about-blank-inherits-opener-origin.html diff --git a/Libraries/LibWeb/HTML/TraversableNavigable.cpp b/Libraries/LibWeb/HTML/TraversableNavigable.cpp index fe1db7d345fa8..0ced2a560428c 100644 --- a/Libraries/LibWeb/HTML/TraversableNavigable.cpp +++ b/Libraries/LibWeb/HTML/TraversableNavigable.cpp @@ -94,7 +94,7 @@ GC::Ref TraversableNavigable::create_a_new_top_level_trave // document: document (now owned by Navigable::m_active_document, not DocumentState) // initiator origin: null if opener is null; otherwise, document's origin - document_state->set_initiator_origin(opener ? Optional {} : document->origin()); + document_state->set_initiator_origin(opener ? document->origin() : Optional {}); // origin: document's origin document_state->set_origin(document->origin()); diff --git a/Tests/LibWeb/Text/expected/HTML/window-open-about-blank-inherits-opener-origin.txt b/Tests/LibWeb/Text/expected/HTML/window-open-about-blank-inherits-opener-origin.txt new file mode 100644 index 0000000000000..3bd3c2818df39 --- /dev/null +++ b/Tests/LibWeb/Text/expected/HTML/window-open-about-blank-inherits-opener-origin.txt @@ -0,0 +1,3 @@ +initial popup.location.href: about:blank +initial popup.document.body.textContent: Hello Shannon! +reloaded popup.document.body.textContent: diff --git a/Tests/LibWeb/Text/input/HTML/window-open-about-blank-inherits-opener-origin.html b/Tests/LibWeb/Text/input/HTML/window-open-about-blank-inherits-opener-origin.html new file mode 100644 index 0000000000000..41b70793b5f1d --- /dev/null +++ b/Tests/LibWeb/Text/input/HTML/window-open-about-blank-inherits-opener-origin.html @@ -0,0 +1,42 @@ + + + \ No newline at end of file