From 096dffbcab9691b9af2f2fd29efd046b105db8c8 Mon Sep 17 00:00:00 2001 From: Olli Pettay Date: Sat, 25 Apr 2026 11:03:41 +0200 Subject: [PATCH] Bug 2025370 - Properly handle error case in EventListenerManager::GetTypedEventHandler --- dom/events/EventListenerManager.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/dom/events/EventListenerManager.cpp b/dom/events/EventListenerManager.cpp index 7db30be4e0..a5bf65cea9 100644 --- a/dom/events/EventListenerManager.cpp +++ b/dom/events/EventListenerManager.cpp @@ -1632,8 +1632,12 @@ EventListenerManager::GetTypedEventHandler(nsIAtom* aEventName, JSEventHandler* jsEventHandler = listener->GetJSEventHandler(); + Maybe> pin; if (listener->mHandlerIsString) { - CompileEventHandlerInternal(listener, nullptr, nullptr); + pin.emplace(jsEventHandler); + if (NS_FAILED(CompileEventHandlerInternal(listener, nullptr, nullptr))) { + listener = nullptr; + } } const TypedEventHandler& typedHandler =