aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/script_thread.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/script_thread.rs')
-rw-r--r--components/script/script_thread.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/components/script/script_thread.rs b/components/script/script_thread.rs
index fcb351cebb2..2e7d3bfebc0 100644
--- a/components/script/script_thread.rs
+++ b/components/script/script_thread.rs
@@ -1652,6 +1652,13 @@ impl ScriptThread {
let load = self.incomplete_loads.borrow_mut().remove(idx);
load.layout_chan.clone()
} else if let Some(document) = self.documents.borrow_mut().remove(id) {
+ // We don't want to dispatch `mouseout` event pointing to non-existing element
+ if let Some(target) = self.topmost_mouse_over_target.get() {
+ if target.upcast::<Node>().owner_doc() == document {
+ self.topmost_mouse_over_target.set(None);
+ }
+ }
+
let window = document.window();
if discard_bc == DiscardBrowsingContext::Yes {
window.window_proxy().discard_browsing_context();