From baf589deefe93ffe6881f76f7e2519179f923a1c Mon Sep 17 00:00:00 2001 From: Aliaksandr Kalenik Date: Wed, 27 Mar 2024 14:53:13 +0100 Subject: [PATCH] LibWeb: Add missing navigable destroyed check --- Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp b/Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp index 52e429b02c8..6f2cf6732b2 100644 --- a/Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp +++ b/Userland/Libraries/LibWeb/HTML/TraversableNavigable.cpp @@ -683,6 +683,11 @@ TraversableNavigable::HistoryStepResult TraversableNavigable::apply_the_history_ // 18. For each navigable of nonchangingNavigablesThatStillNeedUpdates, queue a global task on the navigation and traversal task source given navigable's active window to run the steps: for (auto& navigable : non_changing_navigables_that_still_need_updates) { + if (navigable->has_been_destroyed()) { + ++completed_non_changing_jobs; + continue; + } + queue_global_task(Task::Source::NavigationAndTraversal, *navigable->active_window(), [&] { // NOTE: This check is not in the spec but we should not continue navigation if navigable has been destroyed. if (navigable->has_been_destroyed()) {