tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit ccd78dcad6a836356b4ae309929ad3a35bfa1b57
parent aa8403be4bbd78a9da654f88dfd8e3fb477afc6f
Author: Randell Jesup <rjesup@mozilla.com>
Date:   Tue,  2 Dec 2025 04:01:22 +0000

Bug 1995869: Initialize DNS earlier in IOService init r=necko-reviewers,valentin

Differential Revision: https://phabricator.services.mozilla.com/D271532

Diffstat:
Mnetwerk/base/nsIOService.cpp | 6++++++
Mtoolkit/components/backgroundtasks/tests/browser/browser_xpcom_graph_wait.js | 1+
2 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/netwerk/base/nsIOService.cpp b/netwerk/base/nsIOService.cpp @@ -262,6 +262,7 @@ static const char* gCallbackPrefsForSocketProcess[] = { "network.lna.address_space.public.override", "network.lna.websocket.enabled", "network.lna.local-network-to-localhost.skip-checks", + "network.socket.forcePort", nullptr, }; @@ -333,6 +334,11 @@ nsresult nsIOService::Init() { InitializeNetworkLinkService(); InitializeProtocolProxyService(); + // This is just to start the DNS service to make it fast to get later. + // Don't invoke directly since we're already in GetService. RefPtr needed + // because already_AddRefed<> doesn't like to be dropped + NS_DispatchToCurrentThread(NS_NewRunnableFunction( + __func__, []() { RefPtr<nsIDNSService> dns = GetOrInitDNSService(); })); SetOffline(false); diff --git a/toolkit/components/backgroundtasks/tests/browser/browser_xpcom_graph_wait.js b/toolkit/components/backgroundtasks/tests/browser/browser_xpcom_graph_wait.js @@ -61,6 +61,7 @@ const backgroundtaskPhases = { "@mozilla.org/layout/content-policy;1", "@mozilla.org/memory-reporter-manager;1", "@mozilla.org/network/captive-portal-service;1", + "@mozilla.org/network/dns-service;1", "@mozilla.org/network/effective-tld-service;1", "@mozilla.org/network/idn-service;1", "@mozilla.org/network/io-service;1",