commit 30499d5cdcb99af41b410b0970e1f74c4f2b34bc
parent 85324622ab5f4b2443e92b29b247d293b75c55e0
Author: Tooru Fujisawa <arai_a@mac.com>
Date: Wed, 22 Oct 2025 04:35:35 +0000
Bug 1991607 - Part 12: Reorder ScriptLoadRequest/ModuleLoadRequest fields. r=bthrall
Differential Revision: https://phabricator.services.mozilla.com/D267361
Diffstat:
3 files changed, 29 insertions(+), 18 deletions(-)
diff --git a/js/loader/ModuleLoadRequest.cpp b/js/loader/ModuleLoadRequest.cpp
@@ -51,6 +51,7 @@ ModuleLoadRequest::ModuleLoadRequest(
: ScriptLoadRequest(ScriptKind::eModule, aIntegrity, aReferrer, aContext),
mKind(aKind),
mModuleType(aModuleType),
+ mIsDynamicImport(aKind == Kind::DynamicImport),
mErroredLoadingImports(false),
mLoader(aLoader),
mRootModule(aRootModule) {
diff --git a/js/loader/ModuleLoadRequest.h b/js/loader/ModuleLoadRequest.h
@@ -104,17 +104,22 @@ class ModuleLoadRequest final : public ScriptLoadRequest {
void LoadFinished();
- const Kind mKind;
-
void SetErroredLoadingImports() {
MOZ_ASSERT(IsDynamicImport());
MOZ_ASSERT(IsFetching() || IsCompiling());
mErroredLoadingImports = true;
}
+ public:
+ // Fields.
+ const Kind mKind;
+
// Type of module (JavaScript, JSON)
const ModuleType mModuleType;
+ // Is this the top level request for a dynamic module import?
+ const bool mIsDynamicImport;
+
// A flag (for dynamic import) that indicates the module script is
// successfully fetched and compiled, but its dependencies are failed to load.
bool mErroredLoadingImports;
diff --git a/js/loader/ScriptLoadRequest.h b/js/loader/ScriptLoadRequest.h
@@ -212,7 +212,6 @@ class ScriptLoadRequest : public nsISupports,
mMemoryCachingPlan = CachingPlan::PassedCondition;
}
- public:
mozilla::CORSMode CORSMode() const { return FetchOptions()->mCORSMode; }
bool HasLoadContext() const { return mLoadContext; }
@@ -231,11 +230,28 @@ class ScriptLoadRequest : public nsISupports,
const LoadedScript* getLoadedScript() const { return mLoadedScript.get(); }
LoadedScript* getLoadedScript() { return mLoadedScript.get(); }
- const ScriptKind mKind; // Whether this is a classic script or a module
- // script.
+ bool HasSourceMapURL() const { return mHasSourceMapURL_; }
+ const nsString& GetSourceMapURL() const {
+ MOZ_ASSERT(mHasSourceMapURL_);
+ return mMaybeSourceMapURL_;
+ }
+ void SetSourceMapURL(const nsString& aSourceMapURL) {
+ MOZ_ASSERT(!mHasSourceMapURL_);
+ mMaybeSourceMapURL_ = aSourceMapURL;
+ mHasSourceMapURL_ = true;
+ }
+
+ public:
+ // Fields.
+
+ // Whether this is a classic script, a module script, or an import map.
+ const ScriptKind mKind;
+
+ // Are we still waiting for a load to complete?
+ State mState;
- State mState; // Are we still waiting for a load to complete?
- bool mFetchSourceOnly; // Request source, not cached bytecode.
+ // Request source, not cached bytecode.
+ bool mFetchSourceOnly;
// Becomes true if this has source map url.
//
@@ -268,17 +284,6 @@ class ScriptLoadRequest : public nsISupports,
// Use HasSourceMapURL(), SetSourceMapURL(), and GetSourceMapURL().
nsString mMaybeSourceMapURL_;
- bool HasSourceMapURL() const { return mHasSourceMapURL_; }
- const nsString& GetSourceMapURL() const {
- MOZ_ASSERT(mHasSourceMapURL_);
- return mMaybeSourceMapURL_;
- }
- void SetSourceMapURL(const nsString& aSourceMapURL) {
- MOZ_ASSERT(!mHasSourceMapURL_);
- mMaybeSourceMapURL_ = aSourceMapURL;
- mHasSourceMapURL_ = true;
- }
-
nsCOMPtr<nsIPrincipal> mOriginPrincipal;
// Keep the URI's filename alive during off thread parsing.