tor-browser

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

commit 18958bfdef8b2452874467cd9889e468a1ff4f3b
parent d9af9be984bddd7956a6be5f5256869ca4375efe
Author: Daniel Minor <dminor@mozilla.com>
Date:   Fri, 12 Dec 2025 14:12:37 +0000

Bug 1994828 - Allow service workers to load wasm modules; r=dom-worker-reviewers,edenchuang

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

Diffstat:
Mdom/workers/loader/NetworkLoadHandler.cpp | 11+++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/dom/workers/loader/NetworkLoadHandler.cpp b/dom/workers/loader/NetworkLoadHandler.cpp @@ -341,8 +341,15 @@ nsresult NetworkLoadHandler::PrepareForRequest(nsIRequest* aRequest) { auto mimeTypeUTF16 = NS_ConvertUTF8toUTF16(mimeType); if (!nsContentUtils::IsJavascriptMIMEType(mimeTypeUTF16)) { // JSON is allowed as a non-toplevel. - if (loadContext->IsTopLevel() || - !nsContentUtils::IsJsonMimeType(mimeTypeUTF16)) { + if (!((!loadContext->IsTopLevel() && + nsContentUtils::IsJsonMimeType(mimeTypeUTF16)) +#ifdef NIGHTLY_BUILD + // Allow wasm modules. + || (StaticPrefs:: + javascript_options_experimental_wasm_esm_integration() && + nsContentUtils::HasWasmMimeTypeEssence(mimeTypeUTF16)) +#endif + )) { const nsCString& scope = mWorkerRef->Private() ->GetServiceWorkerRegistrationDescriptor() .Scope();