diff --git a/content/events/src/nsDOMEvent.cpp b/content/events/src/nsDOMEvent.cpp index 4652bd3aee65..96992de7e267 100644 --- a/content/events/src/nsDOMEvent.cpp +++ b/content/events/src/nsDOMEvent.cpp @@ -381,16 +381,16 @@ nsDOMEvent::StopImmediatePropagation() static nsIDocument* GetDocumentForReport(nsEvent* aEvent) { - nsCOMPtr node = do_QueryInterface(aEvent->currentTarget); - if (node) + nsIDOMEventTarget* target = aEvent->currentTarget; + if (nsCOMPtr node = do_QueryInterface(target)) { return node->OwnerDoc(); + } - nsCOMPtr window = do_QueryInterface(aEvent->currentTarget); - if (!window) - return nullptr; + if (nsCOMPtr window = do_QueryInterface(target)) { + return window->GetExtantDoc(); + } - nsCOMPtr doc(do_QueryInterface(window->GetExtantDocument())); - return doc; + return nullptr; } static void