diff --git a/dom/script/ScriptLoader.cpp b/dom/script/ScriptLoader.cpp index 0ded6cd45..a9dac1d11 100644 --- a/dom/script/ScriptLoader.cpp +++ b/dom/script/ScriptLoader.cpp @@ -120,6 +120,36 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(ScriptLoadRequest) NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mFetchOptions) NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END + +ScriptLoadRequest::ScriptLoadRequest(ScriptKind aKind, + nsIURI* aURI, + ScriptFetchOptions* aFetchOptions, + const SRIMetadata& aIntegrity, + nsIURI* aReferrer) + : mKind(aKind), + mScriptMode(ScriptMode::eBlocking), + mProgress(Progress::Loading), + mIsInline(true), + mHasSourceMapURL(false), + mInDeferList(false), + mInAsyncList(false), + mIsNonAsyncScriptInserted(false), + mIsXSLT(false), + mIsCanceled(false), + mWasCompiledOMT(false), + mIsTracking(false), + mOffThreadToken(nullptr), + mScriptTextBuf(nullptr), + mScriptTextLength(0), + mURI(aURI), + mLineNo(1), + mIntegrity(aIntegrity), + mReferrer(aReferrer), + mFetchOptions(aFetchOptions) +{ + MOZ_ASSERT(mFetchOptions); +} + ScriptLoadRequest::~ScriptLoadRequest() { js_free(mScriptTextBuf); diff --git a/dom/script/ScriptLoader.h b/dom/script/ScriptLoader.h index c67a447ff..c65f88910 100644 --- a/dom/script/ScriptLoader.h +++ b/dom/script/ScriptLoader.h @@ -92,28 +92,7 @@ public: nsIURI* aURI, ScriptFetchOptions* aFetchOptions, const SRIMetadata& aIntegrity, - nsIURI* aReferrer) - : mKind(aKind), - mScriptMode(ScriptMode::eBlocking), - mProgress(Progress::Loading), - mIsInline(true), - mHasSourceMapURL(false), - mInDeferList(false), - mInAsyncList(false), - mIsNonAsyncScriptInserted(false), - mIsXSLT(false), - mIsCanceled(false), - mWasCompiledOMT(false), - mIsTracking(false), - mOffThreadToken(nullptr), - mScriptTextBuf(nullptr), - mScriptTextLength(0), - mURI(aURI), - mLineNo(1), - mIntegrity(aIntegrity), - mReferrer(aReferrer) - { - } + nsIURI* aReferrer); NS_DECL_CYCLE_COLLECTING_ISUPPORTS NS_DECL_CYCLE_COLLECTION_CLASS(ScriptLoadRequest) diff --git a/js/src/frontend/ParseNode.cpp b/js/src/frontend/ParseNode.cpp index 86a57ca01..457bb6f0e 100644 --- a/js/src/frontend/ParseNode.cpp +++ b/js/src/frontend/ParseNode.cpp @@ -494,6 +494,8 @@ PushNodeChildren(ParseNode* pn, NodeStack* stack) case PNK_EXPORT_SPEC_LIST: case PNK_PARAMSBODY: case PNK_CLASSMETHODLIST: + case PNK_IMPORT_META: + case PNK_CALL_IMPORT: return PushListNodeChildren(&pn->as(), stack); // Array comprehension nodes are lists with a single child: diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js index 922db3a03..ab30ca875 100644 --- a/modules/libpref/init/all.js +++ b/modules/libpref/init/all.js @@ -1395,6 +1395,8 @@ pref("javascript.options.main_thread_stack_quota_cap", 6291456); pref("javascript.options.main_thread_stack_quota_cap", 2097152); #endif +// Dynamic module import. +pref("javascript.options.dynamicImport", false); // advanced prefs pref("advanced.mailftp", false);