Bug 1877792 - Part 8: Add module type to ModuleLoadRequest::NewVisitedSetForTopLevelImport r=spidermonkey-reviewers,dom-worker-reviewers,dom-core,asuth,jonco,mccr8

This patch adds the new parameter to the `NewVisitedSetForTopLevelImport`
method, but we hard-code the module type (which will be addressed in a later
patch)

Differential Revision: https://phabricator.services.mozilla.com/D218555
This commit is contained in:
Jonatan Klemets
2024-09-03 08:10:50 +00:00
parent becd3a556a
commit 5d9da99e61
8 changed files with 44 additions and 21 deletions

View File

@@ -282,12 +282,15 @@ already_AddRefed<ModuleLoadRequest> ModuleLoader::CreateTopLevel(
nsIURI* aURI, ReferrerPolicy aReferrerPolicy,
ScriptFetchOptions* aFetchOptions, const SRIMetadata& aIntegrity,
nsIURI* aReferrer, ScriptLoader* aLoader, ScriptLoadContext* aContext) {
RefPtr<VisitedURLSet> visitedSet =
ModuleLoadRequest::NewVisitedSetForTopLevelImport(
aURI, JS::ModuleType::JavaScript);
RefPtr<ModuleLoadRequest> request = new ModuleLoadRequest(
aURI, JS::ModuleType::JavaScript, aReferrerPolicy, aFetchOptions,
aIntegrity, aReferrer, aContext, true,
/* is top level */ false, /* is dynamic import */
aLoader->GetModuleLoader(),
ModuleLoadRequest::NewVisitedSetForTopLevelImport(aURI), nullptr);
aLoader->GetModuleLoader(), visitedSet, nullptr);
request->NoCacheEntryFound();
return request.forget();
@@ -361,11 +364,15 @@ already_AddRefed<ModuleLoadRequest> ModuleLoader::CreateDynamicImport(
context->mIsInline = false;
context->mScriptMode = ScriptLoadContext::ScriptMode::eAsync;
RefPtr<ModuleLoadRequest> request = new ModuleLoadRequest(
aURI, JS::ModuleType::JavaScript, referrerPolicy, options, SRIMetadata(),
baseURL, context, true,
/* is top level */ true, /* is dynamic import */
this, ModuleLoadRequest::NewVisitedSetForTopLevelImport(aURI), nullptr);
RefPtr<VisitedURLSet> visitedSet =
ModuleLoadRequest::NewVisitedSetForTopLevelImport(
aURI, JS::ModuleType::JavaScript);
RefPtr<ModuleLoadRequest> request =
new ModuleLoadRequest(aURI, JS::ModuleType::JavaScript, referrerPolicy,
options, SRIMetadata(), baseURL, context, true,
/* is top level */ true, /* is dynamic import */
this, visitedSet, nullptr);
request->SetDynamicImport(aMaybeActiveScript, aSpecifier, aPromise);
request->NoCacheEntryFound();