From cde3545a5185a6981b86d3cddf93642bf41ca9c6 Mon Sep 17 00:00:00 2001 From: Shannon Booth Date: Tue, 15 Oct 2024 00:03:34 +1300 Subject: [PATCH] LibWeb: Correct some faulty logic in 'apply the history step' We were checking if the parent was _not_ null, and not checking for an auxiliary browsing context at all. --- Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp b/Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp index 7f0b9219840..21fd28a53c5 100644 --- a/Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp +++ b/Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp @@ -584,8 +584,8 @@ TraversableNavigable::HistoryStepResult TraversableNavigable::apply_the_history_ // - targetEntry's document's browsing context is not an auxiliary browsing context whose opener browsing context is non-null; and // - targetEntry's document's origin is not oldOrigin, // then set targetEntry's document state's navigable target name to the empty string. - if (navigable->parent() != nullptr - && target_entry->document()->browsing_context()->opener_browsing_context() == nullptr + if (navigable->parent() == nullptr + && !(target_entry->document()->browsing_context()->is_auxiliary() && target_entry->document()->browsing_context()->opener_browsing_context() != nullptr) && target_entry->document_state()->origin() != old_origin) { target_entry->document_state()->set_navigable_target_name(String {}); }