diff --git a/browser/ui/webui/new_tab_page/brave_new_tab_message_handler.cc b/browser/ui/webui/new_tab_page/brave_new_tab_message_handler.cc index 9a909e7142cb..b406a23eca59 100644 --- a/browser/ui/webui/new_tab_page/brave_new_tab_message_handler.cc +++ b/browser/ui/webui/new_tab_page/brave_new_tab_message_handler.cc @@ -431,6 +431,7 @@ void BraveNewTabMessageHandler::OnJavascriptDisallowed() { if (tor_launcher_factory_) tor_launcher_factory_->RemoveObserver(this); #endif + weak_ptr_factory_.InvalidateWeakPtrs(); } void BraveNewTabMessageHandler::HandleGetPreferences( @@ -726,6 +727,11 @@ void BraveNewTabMessageHandler::HandleTodayGetDisplayAd( if (!handler) { return; } + + if (!handler->IsJavascriptAllowed()) { + return; + } + if (!success) { handler->ResolveJavascriptCallback(base::Value(callback_id), std::move(base::Value()));