commit 4a904c58049c98a11568eeb250d1d10e41509ec6
parent 42d9cf09105531b1a0e5c848513fea66f62420bb
Author: Tooru Fujisawa <arai_a@mac.com>
Date: Wed, 5 Nov 2025 04:09:47 +0000
Bug 1973221 - Part 1: Support disk cache for dynamic import. r=nbp
Differential Revision: https://phabricator.services.mozilla.com/D271030
Diffstat:
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/dom/script/ScriptLoader.cpp b/dom/script/ScriptLoader.cpp
@@ -3408,7 +3408,7 @@ nsresult ScriptLoader::MaybePrepareForDiskCacheAfterExecute(
nsresult ScriptLoader::MaybePrepareModuleForDiskCacheAfterExecute(
ModuleLoadRequest* aRequest, nsresult aRv) {
- MOZ_ASSERT(aRequest->IsTopLevel());
+ MOZ_ASSERT(aRequest->IsTopLevel() || aRequest->IsDynamicImport());
if (mCache) {
// Disk cache is handled by SharedScriptCache.
diff --git a/js/loader/ModuleLoaderBase.cpp b/js/loader/ModuleLoaderBase.cpp
@@ -1465,6 +1465,10 @@ void ModuleLoaderBase::ProcessDynamicImport(ModuleLoadRequest* aRequest) {
LOG(("ScriptLoadRequest (%p): ProcessDynamicImport", aRequest));
FinishLoadingImportedModule(cx, aRequest);
+
+ (void)mLoader->MaybePrepareModuleForDiskCacheAfterExecute(aRequest, NS_OK);
+
+ mLoader->MaybeUpdateDiskCache();
}
nsresult ModuleLoaderBase::EvaluateModule(ModuleLoadRequest* aRequest) {