ported from UXP: Issue #1691 - Part 6c: Fix a few issues with the earlier commits. Need PNK_CALL_IMPORT and PNK_IMPORT_META in the node children list or it will abort. When porting ScriptFetchOptions support, I had 2 constructors, I picked the wrong one. Missed adding the preference javascript.options.dynamicImport to all.js. (9a19e9d1)

This commit is contained in:
2023-04-30 23:21:59 +08:00
parent abf9ba5235
commit ad255fdb78
4 changed files with 35 additions and 22 deletions
+30
View File
@@ -120,6 +120,36 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(ScriptLoadRequest)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mFetchOptions) NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mFetchOptions)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END 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() ScriptLoadRequest::~ScriptLoadRequest()
{ {
js_free(mScriptTextBuf); js_free(mScriptTextBuf);
+1 -22
View File
@@ -92,28 +92,7 @@ public:
nsIURI* aURI, nsIURI* aURI,
ScriptFetchOptions* aFetchOptions, ScriptFetchOptions* aFetchOptions,
const SRIMetadata& aIntegrity, const SRIMetadata& aIntegrity,
nsIURI* aReferrer) 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)
{
}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(ScriptLoadRequest) NS_DECL_CYCLE_COLLECTION_CLASS(ScriptLoadRequest)
+2
View File
@@ -494,6 +494,8 @@ PushNodeChildren(ParseNode* pn, NodeStack* stack)
case PNK_EXPORT_SPEC_LIST: case PNK_EXPORT_SPEC_LIST:
case PNK_PARAMSBODY: case PNK_PARAMSBODY:
case PNK_CLASSMETHODLIST: case PNK_CLASSMETHODLIST:
case PNK_IMPORT_META:
case PNK_CALL_IMPORT:
return PushListNodeChildren(&pn->as<ListNode>(), stack); return PushListNodeChildren(&pn->as<ListNode>(), stack);
// Array comprehension nodes are lists with a single child: // Array comprehension nodes are lists with a single child:
+2
View File
@@ -1395,6 +1395,8 @@ pref("javascript.options.main_thread_stack_quota_cap", 6291456);
pref("javascript.options.main_thread_stack_quota_cap", 2097152); pref("javascript.options.main_thread_stack_quota_cap", 2097152);
#endif #endif
// Dynamic module import.
pref("javascript.options.dynamicImport", false);
// advanced prefs // advanced prefs
pref("advanced.mailftp", false); pref("advanced.mailftp", false);