From f99c131db13e15eecf0170028aab66e63843d1d4 Mon Sep 17 00:00:00 2001 From: Fedor Date: Thu, 17 Sep 2020 08:54:29 +0300 Subject: [PATCH] Complete implement module type scripting. --- dom/html/nsHTMLDocument.cpp | 3 + dom/script/ModuleLoadRequest.h | 2 +- dom/script/ScriptLoader.cpp | 115 ++- dom/script/ScriptLoader.h | 16 +- js/src/jsapi.cpp | 6 +- .../htmlparser/impl/AttributeName.java | 955 +++++++++--------- parser/html/nsHtml5AtomList.h | 1 + parser/html/nsHtml5AttributeName.cpp | 484 ++++----- parser/html/nsHtml5AttributeName.h | 1 + parser/html/nsHtml5SpeculativeLoad.cpp | 16 +- parser/html/nsHtml5SpeculativeLoad.h | 17 +- parser/html/nsHtml5TreeBuilderCppSupplement.h | 8 +- parser/html/nsHtml5TreeOpExecutor.cpp | 6 +- parser/html/nsHtml5TreeOpExecutor.h | 3 +- xpcom/glue/nsBaseHashtable.h | 1 + 15 files changed, 879 insertions(+), 755 deletions(-) diff --git a/dom/html/nsHTMLDocument.cpp b/dom/html/nsHTMLDocument.cpp index f3cb096b9..9d0b2c9bb 100644 --- a/dom/html/nsHTMLDocument.cpp +++ b/dom/html/nsHTMLDocument.cpp @@ -1471,6 +1471,9 @@ nsHTMLDocument::Open(JSContext* cx, // document again otherwise the document could have a non-zero onload block // count without the onload blocker request being in the loadgroup. EnsureOnloadBlocker(); + + // Throw away loaded modules created for the previous global. + ScriptLoader()->ClearModuleMap(); } // Step 8 - Clear all event listeners out of our DOM tree diff --git a/dom/script/ModuleLoadRequest.h b/dom/script/ModuleLoadRequest.h index eefb7dad5..4eac65090 100644 --- a/dom/script/ModuleLoadRequest.h +++ b/dom/script/ModuleLoadRequest.h @@ -56,7 +56,7 @@ public: ModuleLoadRequest(nsIURI* aURI, ModuleLoadRequest* aParent); - bool IsTopLevel() const { + bool IsTopLevel() const override { return mIsTopLevel; } diff --git a/dom/script/ScriptLoader.cpp b/dom/script/ScriptLoader.cpp index 989301b91..362c27f3e 100644 --- a/dom/script/ScriptLoader.cpp +++ b/dom/script/ScriptLoader.cpp @@ -477,6 +477,11 @@ ScriptLoader::GetFetchedModule(nsIURI* aURL) const return ms; } +void ScriptLoader::ClearModuleMap() { + MOZ_ASSERT(mFetchingModules.IsEmpty()); + mFetchedModules.Clear(); +} + nsresult ScriptLoader::ProcessFetchedModuleSource(ModuleLoadRequest* aRequest) { @@ -559,7 +564,9 @@ ScriptLoader::CreateModuleScript(ModuleLoadRequest* aRequest) rv = nsJSUtils::CompileModule(cx, srcBuf, global, options, &module); } } + MOZ_ASSERT(NS_SUCCEEDED(rv) == (module != nullptr)); + RefPtr moduleScript = new ModuleScript(this, aRequest->mBaseURL); aRequest->mModuleScript = moduleScript; @@ -979,7 +986,7 @@ ScriptLoader::StartLoad(ScriptLoadRequest *aRequest, const nsAString &aType, if (aRequest->IsModuleRequest()) { // Check whether the module has been fetched or is currently being fetched, - // and if so wait for it. + // and if so wait for it rather than starting a new fetch. ModuleLoadRequest* request = aRequest->AsModuleRequest(); if (ModuleMapContainsURL(request->mURI)) { WaitForModuleFetch(request->mURI) @@ -988,9 +995,6 @@ ScriptLoader::StartLoad(ScriptLoadRequest *aRequest, const nsAString &aType, &ModuleLoadRequest::LoadFailed); return NS_OK; } - - // Otherwise put the URL in the module map and mark it as fetching. - SetModuleFetchStarted(request); } nsContentPolicyType contentPolicyType = aRequest->IsPreload() @@ -1103,7 +1107,16 @@ ScriptLoader::StartLoad(ScriptLoadRequest *aRequest, const nsAString &aType, rv = NS_NewIncrementalStreamLoader(getter_AddRefs(loader), handler); NS_ENSURE_SUCCESS(rv, rv); - return channel->AsyncOpen2(loader); + rv = channel->AsyncOpen2(loader); + NS_ENSURE_SUCCESS(rv, rv); + + if (aRequest->IsModuleRequest()) { + // We successfully started fetching a module so put its URL in the module + // map and mark it as fetching. + SetModuleFetchStarted(aRequest->AsModuleRequest()); + } + + return NS_OK; } bool @@ -1355,8 +1368,8 @@ ScriptLoader::ProcessScriptElement(nsIScriptElement *aElement) } } - // Should still be in loading stage of script. - NS_ASSERTION(!request->InCompilingStage(), + // Should still be in loading stage of script unless we're loading a module. + NS_ASSERTION(!request->InCompilingStage() || request->IsModuleRequest(), "Request should not yet be in compiling stage."); request->mJSVersion = version; @@ -1904,14 +1917,17 @@ ScriptLoader::FillCompileOptionsForRequest(const AutoJSAPI&jsapi, aOptions->setMutedErrors(!subsumes); } - JSContext* cx = jsapi.cx(); - JS::Rooted elementVal(cx); - MOZ_ASSERT(aRequest->mElement); - if (NS_SUCCEEDED(nsContentUtils::WrapNative(cx, aRequest->mElement, - &elementVal, - /* aAllowWrapping = */ true))) { - MOZ_ASSERT(elementVal.isObject()); - aOptions->setElement(&elementVal.toObject()); + if (!aRequest->IsModuleRequest()) { + // Only do this for classic scripts. + JSContext* cx = jsapi.cx(); + JS::Rooted elementVal(cx); + MOZ_ASSERT(aRequest->mElement); + if (NS_SUCCEEDED(nsContentUtils::WrapNative(cx, aRequest->mElement, + &elementVal, + /* aAllowWrapping = */ true))) { + MOZ_ASSERT(elementVal.isObject()); + aOptions->setElement(&elementVal.toObject()); + } } return NS_OK; @@ -2373,7 +2389,7 @@ ScriptLoader::HandleLoadError(ScriptLoadRequest *aRequest, nsresult aResult) { RefPtr req = mXSLTRequests.Steal(aRequest); FireScriptAvailable(aResult, req); } - } else if (aRequest->IsModuleRequest()) { + } else if (aRequest->IsModuleRequest() && !aRequest->IsPreload()) { ModuleLoadRequest* modReq = aRequest->AsModuleRequest(); MOZ_ASSERT(!modReq->IsTopLevel()); MOZ_ASSERT(!modReq->isInList()); @@ -2394,8 +2410,19 @@ ScriptLoader::HandleLoadError(ScriptLoadRequest *aRequest, nsresult aResult) { FireScriptAvailable(aResult, aRequest); ContinueParserAsync(aRequest); mCurrentParserInsertedScript = oldParserInsertedScript; + } else if (aRequest->IsPreload()) { + if (aRequest->IsModuleRequest()) { + // If there is an error preloading modules, cancel the load request. + aRequest->Cancel(); + } + if (aRequest->IsTopLevel()) { + MOZ_ALWAYS_TRUE(mPreloads.RemoveElement(aRequest, PreloadRequestComparator())); + } + MOZ_ASSERT(!aRequest->isInList()); } else { - mPreloads.RemoveElement(aRequest, PreloadRequestComparator()); + // This happens for blocking requests cancelled by ParsingComplete(). + MOZ_ASSERT(aRequest->IsCanceled()); + MOZ_ASSERT(!aRequest->isInList()); } } @@ -2424,6 +2451,18 @@ ScriptLoader::NumberOfProcessors() return mNumberOfProcessors; } +static bool +IsInternalURIScheme(nsIURI* uri) +{ + // Note: Extend this if other schemes need to be included. + bool isResource; + if (NS_SUCCEEDED(uri->SchemeIs("resource", &isResource)) && isResource) { + return true; + } + + return false; +} + nsresult ScriptLoader::PrepareLoadedRequest(ScriptLoadRequest* aRequest, nsIIncrementalStreamLoader* aLoader, @@ -2511,7 +2550,17 @@ ScriptLoader::PrepareLoadedRequest(ScriptLoadRequest* aRequest, return NS_ERROR_FAILURE; } - channel->GetURI(getter_AddRefs(request->mBaseURL)); + nsCOMPtr uri; + rv = channel->GetOriginalURI(getter_AddRefs(uri)); + NS_ENSURE_SUCCESS(rv, rv); + + // Fixup internal scheme URIs like resource:, because the channel URI + // will point to file: which won't be allowed to load. + if (uri && IsInternalURIScheme(uri)) { + request->mBaseURL = uri; + } else { + channel->GetURI(getter_AddRefs(request->mBaseURL)); + } // Attempt to compile off main thread. rv = AttemptAsyncScriptCompile(request); @@ -2576,13 +2625,15 @@ ScriptLoader::ParsingComplete(bool aTerminated) } void -ScriptLoader::PreloadURI(nsIURI *aURI, const nsAString &aCharset, +ScriptLoader::PreloadURI(nsIURI *aURI, + const nsAString &aCharset, const nsAString &aType, const nsAString &aCrossOrigin, const nsAString& aIntegrity, bool aScriptFromHead, bool aAsync, bool aDefer, + bool aNoModule, const mozilla::net::ReferrerPolicy aReferrerPolicy) { NS_ENSURE_TRUE_VOID(mDocument); @@ -2591,8 +2642,28 @@ ScriptLoader::PreloadURI(nsIURI *aURI, const nsAString &aCharset, return; } - // TODO: Preload module scripts. - if (mDocument->ModuleScriptsEnabled() && aType.LowerCaseEqualsASCII("module")) { + ScriptKind scriptKind = ScriptKind::Classic; + + if (mDocument->ModuleScriptsEnabled()) { + // Don't load nomodule scripts. + if (aNoModule) { + return; + } + + // Preload module scripts. + static const char kASCIIWhitespace[] = "\t\n\f\r "; + + nsAutoString type(aType); + type.Trim(kASCIIWhitespace); + if (type.LowerCaseEqualsASCII("module")) { + scriptKind = ScriptKind::Module; + } + } + + if (scriptKind == ScriptKind::Classic && + !aType.IsEmpty() && !nsContentUtils::IsJavascriptMIMEType(aType)) { + // Unknown type (not type = module and not type = JS MIME type). + // Don't load it. return; } @@ -2609,7 +2680,7 @@ ScriptLoader::PreloadURI(nsIURI *aURI, const nsAString &aCharset, } RefPtr request = - CreateLoadRequest(ScriptKind::Classic, aURI, nullptr, 0, + CreateLoadRequest(scriptKind, aURI, nullptr, 0, Element::StringToCORSMode(aCrossOrigin), sriMetadata, aReferrerPolicy); request->mIsInline = false; diff --git a/dom/script/ScriptLoader.h b/dom/script/ScriptLoader.h index ed1e6acbc..73f2a9258 100644 --- a/dom/script/ScriptLoader.h +++ b/dom/script/ScriptLoader.h @@ -173,6 +173,12 @@ public: return mScriptMode == ScriptMode::eAsync; } + virtual bool IsTopLevel() const + { + // Classic scripts are always top level. + return true; + } + void MaybeCancelOffThreadScript(); using super::getNext; @@ -479,13 +485,15 @@ public: * @param aIntegrity The expect hash url, if avail, of the request * @param aScriptFromHead Whether or not the script was a child of head */ - virtual void PreloadURI(nsIURI *aURI, const nsAString &aCharset, + virtual void PreloadURI(nsIURI *aURI, + const nsAString &aCharset, const nsAString &aType, const nsAString &aCrossOrigin, const nsAString& aIntegrity, bool aScriptFromHead, bool aAsync, bool aDefer, + bool aNoModule, const mozilla::net::ReferrerPolicy aReferrerPolicy); /** @@ -498,6 +506,12 @@ public: return mPendingChildLoaders.AppendElement(aChild) != nullptr; } + /* + * Clear the map of loaded modules. Called when a Document object is reused + * for a different global. + */ + void ClearModuleMap(); + private: virtual ~ScriptLoader(); diff --git a/js/src/jsapi.cpp b/js/src/jsapi.cpp index 69a3ba2ac..c0f0e61cc 100644 --- a/js/src/jsapi.cpp +++ b/js/src/jsapi.cpp @@ -4708,7 +4708,7 @@ JS::ModuleInstantiate(JSContext* cx, JS::HandleObject moduleArg) { AssertHeapIsIdle(cx); CHECK_REQUEST(cx); - assertSameCompartment(cx, moduleArg); + releaseAssertSameCompartment(cx, moduleArg); return ModuleObject::Instantiate(cx, moduleArg.as()); } @@ -4717,7 +4717,7 @@ JS::ModuleEvaluate(JSContext* cx, JS::HandleObject moduleArg) { AssertHeapIsIdle(cx); CHECK_REQUEST(cx); - assertSameCompartment(cx, moduleArg); + releaseAssertSameCompartment(cx, moduleArg); return ModuleObject::Evaluate(cx, moduleArg.as()); } @@ -6204,7 +6204,7 @@ JS_SetPendingException(JSContext* cx, HandleValue value) { AssertHeapIsIdle(cx); CHECK_REQUEST(cx); - assertSameCompartment(cx, value); + releaseAssertSameCompartment(cx, value); cx->setPendingException(value); } diff --git a/parser/html/java/htmlparser/src/nu/validator/htmlparser/impl/AttributeName.java b/parser/html/java/htmlparser/src/nu/validator/htmlparser/impl/AttributeName.java index aaf0b7b91..28ada917a 100644 --- a/parser/html/java/htmlparser/src/nu/validator/htmlparser/impl/AttributeName.java +++ b/parser/html/java/htmlparser/src/nu/validator/htmlparser/impl/AttributeName.java @@ -1161,6 +1161,7 @@ public final class AttributeName public static final AttributeName LQUOTE = new AttributeName(ALL_NO_NS, SAME_LOCAL("lquote"), ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName PANOSE_1 = new AttributeName(ALL_NO_NS, SAME_LOCAL("panose-1"), ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName NUMOCTAVES = new AttributeName(ALL_NO_NS, SVG_DIFFERENT("numoctaves", "numOctaves"), ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); + public static final AttributeName NOMODULE = new AttributeName(ALL_NO_NS, SAME_LOCAL("nomodule"), ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG | CASE_FOLDED | BOOLEAN); public static final AttributeName ONLOAD = new AttributeName(ALL_NO_NS, SAME_LOCAL("onload"), ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName ONBOUNCE = new AttributeName(ALL_NO_NS, SAME_LOCAL("onbounce"), ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName ONCONTROLSELECT = new AttributeName(ALL_NO_NS, SAME_LOCAL("oncontrolselect"), ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); @@ -1362,31 +1363,31 @@ public final class AttributeName public static final AttributeName VERYVERYTHINMATHSPACE = new AttributeName(ALL_NO_NS, SAME_LOCAL("veryverythinmathspace"), ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); public static final AttributeName VERYVERYTHICKMATHSPACE = new AttributeName(ALL_NO_NS, SAME_LOCAL("veryverythickmathspace"), ALL_NO_PREFIX, NCNAME_HTML | NCNAME_FOREIGN | NCNAME_LANG); private final static @NoLength AttributeName[] ATTRIBUTE_NAMES = { - STEMH, - REPEATCOUNT, + STEMV, + REPEAT_START, NOWRAP, SRCDOC, - ADDITIVE, + BEGIN, ONFORMCHANGE, KEYTIMES, ARIA_SORT, - OBJECT, - IMAGE_RENDERING, - MARKER_START, - XLINK_ARCROLE, + ONSELECT, + LANGUAGE, + MARKERWIDTH, + XMLNS_XLINK, CLIP, LOWSRC, COLUMNWIDTH, XML_SPACE, VSPACE, - EDGEMODE, - ONBEFOREUPDATE, - UNDERLINE_THICKNESS, - HIGH, - RADIUS, - ROWLINES, - ONEND, - ENCODING, + EDGE, + ONDEACTIVATE, + X_HEIGHT, + LIGHTING_COLOR, + SCRIPTLEVEL, + SCALE, + ONINPUT, + EXPONENT, ONFORMINPUT, SHAPE_RENDERING, ONDRAGLEAVE, @@ -1398,20 +1399,20 @@ public final class AttributeName HSPACE, SPECULAREXPONENT, BASELINE, - LINEBREAK, - ONBEGIN, - ONKEYDOWN, - STRETCHY, - SURFACESCALE, - NARGS, - NOSHADE, - LIMITINGCONEANGLE, - VALIGN, - DECLARE, - FRAMEBORDER, - IN, - STANDBY, - AUTOCOMPLETE, + LABEL, + ONHELP, + ONRESIZE, + SCHEME, + XREF, + ORIGIN, + ONCHANGE, + MEDIUMMATHSPACE, + VISIBILITY, + FILL_RULE, + FRAME, + ICON, + THINMATHSPACE, + AUTOFOCUS, ONLOAD, ONMOVESTART, STROKE_DASHOFFSET, @@ -1434,36 +1435,36 @@ public final class AttributeName CALCMODE, ID, ACCENT_HEIGHT, - CITE, - INDEX, - NAME, - ONRESET, - ORIENTATION, - ONKEYPRESS, - REFERRERPOLICY, - SELECTED, - SIZE, - HREFLANG, - ALIGNMENTSCOPE, - LONGDESC, - TARGETX, - METHOD, - ALTIMG, - DEFINITIONURL, - ONFILTERCHANGE, - STRIKETHROUGH_POSITION, - MARKER_MID, - MASKCONTENTUNITS, - MAXLENGTH, - TITLE, - FORM, - USEMAP, - KERNELUNITLENGTH, - POINTSATX, - WHEN, - XLINK_SHOW, - COLOR_RENDERING, - IDEOGRAPHIC, + DEFER, + IRRELEVANT, + NORESIZE, + ONCELLCHANGE, + ONBEFORECOPY, + ONKEYUP, + RULES, + SPEED, + TYPE, + ONAFTERPRINT, + DRAGGABLE, + LENGTHADJUST, + TARGETY, + MATHVARIANT, + ACTIONTYPE, + HORIZ_ADV_X, + ONFINISH, + STRIKETHROUGH_THICKNESS, + MARKERHEIGHT, + AMPLITUDE, + ONCLICK, + V_ALPHABETIC, + PROMPT, + ZOOMANDPAN, + ONUNLOAD, + POINTSATY, + XLINK_HREF, + XLINK_ACTUATE, + COLOR_INTERPOLATION, + LQUOTE, ONMOUSEWHEEL, ONCONTEXTMENU, ONMOUSEMOVE, @@ -1507,66 +1508,66 @@ public final class AttributeName HEADERS, WORD_SPACING, BEVELLED, - CODETYPE, - DATETIME, - FACE, - INTERCEPT, - LINETHICKNESS, - ONBEFOREUNLOAD, - ORDER, - ONREADYSTATECHANGE, - ONBEFOREPRINT, - ONSELECTSTART, - ONBEFOREACTIVATE, - ONBEFOREEDITFOCUS, - REPEAT, - REPEAT_MIN, - REPEAT_TEMPLATE, - SIZES, - SPREADMETHOD, - UNSELECTABLE, - DIFFUSECONSTANT, - ONAFTERUPDATE, - ALIGN, - HEIGHT, - LANG, - MARGINHEIGHT, - PING, - ALPHABETIC, - MATHEMATICAL, - MATHCOLOR, - PATHLENGTH, - ACTION, - DOMINANT_BASELINE, - HORIZ_ORIGIN_X, - MEDIA, - OPTIMUM, - SCRIPTSIZEMULTIPLIER, - SCRIPTMINSIZE, - BACKGROUND, - MARKER_END, - MASKUNITS, - CELLSPACING, - FILL, - ONBLUR, - STYLE, - AZIMUTH, - FRAMESPACING, - PRIMITIVEUNITS, - SEAMLESS, - ASYNC, - KERNELMATRIX, - OPEN, - POINTER_EVENTS, - POINTSATZ, - TRANSFORM, - XLINK_TITLE, - XMLNS, - AUTOPLAY, - BGCOLOR, - COLOR, - FLOOD_COLOR, - PANOSE_1, + CODEBASE, + DIRECTION, + HIDEFOCUS, + INTEGRITY, + MODE, + ONREPEAT, + OTHER, + ONMESSAGE, + ORIENT, + ONBEFOREPASTE, + ONBEFORDEACTIVATE, + ONBEFORECUT, + REPEAT_MAX, + ROLE, + REPEATDUR, + SUPERSCRIPTSHIFT, + SELECTION, + UNDERLINE_POSITION, + HREF, + PROFILE, + ALIGNMENT_BASELINE, + HANGING, + LARGEOP, + MARGINWIDTH, + TARGET, + ARCHIVE, + MATHBACKGROUND, + MATHSIZE, + PATH, + ACTIVE, + DIVISOR, + HORIZ_ORIGIN_Y, + MANIFEST, + RADIOGROUP, + STRING, + TABINDEX, + LINK, + MASK, + MARKERUNITS, + CELLPADDING, + FILL_OPACITY, + REPLACE, + TABLEVALUES, + FORMAT, + FROM, + SYMMETRIC, + SUMMARY, + ALINK, + KERNING, + ONINVALID, + POINTS, + SPAN, + VLINK, + XLINK_ROLE, + XLINK_TYPE, + AUTOSUBMIT, + COLOR_PROFILE, + COLOR_INTERPOLATION_FILTERS, + FLOOD_OPACITY, + NUMOCTAVES, ONCONTROLSELECT, ONMOUSEENTER, ONROWEXIT, @@ -1654,125 +1655,125 @@ public final class AttributeName ASCENT, BASELINE_SHIFT, CODE, - CODEBASE, - DEFER, - DIRECTION, - EDGE, - HIDEFOCUS, - IRRELEVANT, - INTEGRITY, - LABEL, - MODE, - NORESIZE, - ONREPEAT, - ONSELECT, - OTHER, - ONCELLCHANGE, - ONMESSAGE, - ONHELP, - ORIENT, - ONBEFORECOPY, - ONBEFOREPASTE, - ONDEACTIVATE, - ONBEFORDEACTIVATE, - ONKEYUP, - ONBEFORECUT, - ONRESIZE, - REPEAT_MAX, - RULES, - ROLE, - REPEAT_START, - REPEATDUR, - SPEED, - SUPERSCRIPTSHIFT, - SCHEME, - SELECTION, - TYPE, - UNDERLINE_POSITION, - X_HEIGHT, - HREF, - ONAFTERPRINT, - PROFILE, - XREF, - ALIGNMENT_BASELINE, - DRAGGABLE, - HANGING, - LANGUAGE, - LARGEOP, - LENGTHADJUST, - MARGINWIDTH, - ORIGIN, - TARGET, - TARGETY, - ARCHIVE, - LIGHTING_COLOR, - MATHBACKGROUND, - MATHVARIANT, - MATHSIZE, - ONCHANGE, - PATH, - ACTIONTYPE, - ACTIVE, - BEGIN, - DIVISOR, - HORIZ_ADV_X, - HORIZ_ORIGIN_Y, - MEDIUMMATHSPACE, - MANIFEST, - ONFINISH, - RADIOGROUP, - SCRIPTLEVEL, - STRING, - STRIKETHROUGH_THICKNESS, - TABINDEX, - VISIBILITY, - LINK, - MARKERHEIGHT, - MASK, - MARKERWIDTH, - MARKERUNITS, - AMPLITUDE, - CELLPADDING, - FILL_RULE, - FILL_OPACITY, - ONCLICK, - REPLACE, - SCALE, - TABLEVALUES, - V_ALPHABETIC, - FORMAT, - FRAME, - FROM, - PROMPT, - SYMMETRIC, - STEMV, - SUMMARY, - ZOOMANDPAN, - ALINK, - ICON, - KERNING, - ONUNLOAD, - ONINVALID, - ONINPUT, - POINTS, - POINTSATY, - SPAN, - THINMATHSPACE, - VLINK, - XLINK_HREF, - XLINK_ROLE, - XMLNS_XLINK, - XLINK_TYPE, - XLINK_ACTUATE, - AUTOSUBMIT, - AUTOFOCUS, - COLOR_PROFILE, - COLOR_INTERPOLATION, - COLOR_INTERPOLATION_FILTERS, - EXPONENT, - FLOOD_OPACITY, - LQUOTE, - NUMOCTAVES, + CITE, + DATETIME, + EDGEMODE, + FACE, + INDEX, + INTERCEPT, + LINEBREAK, + LINETHICKNESS, + NAME, + ONBEFOREUNLOAD, + OBJECT, + ORDER, + ONRESET, + ONREADYSTATECHANGE, + ONBEGIN, + ONBEFOREPRINT, + ORIENTATION, + ONSELECTSTART, + ONBEFOREUPDATE, + ONBEFOREACTIVATE, + ONKEYPRESS, + ONBEFOREEDITFOCUS, + ONKEYDOWN, + REPEAT, + REFERRERPOLICY, + REPEAT_MIN, + REPEATCOUNT, + REPEAT_TEMPLATE, + SELECTED, + SIZES, + STRETCHY, + SPREADMETHOD, + SIZE, + UNSELECTABLE, + UNDERLINE_THICKNESS, + DIFFUSECONSTANT, + HREFLANG, + ONAFTERUPDATE, + SURFACESCALE, + ALIGN, + ALIGNMENTSCOPE, + HEIGHT, + IMAGE_RENDERING, + LANG, + LONGDESC, + MARGINHEIGHT, + NARGS, + PING, + TARGETX, + ALPHABETIC, + HIGH, + MATHEMATICAL, + METHOD, + MATHCOLOR, + NOSHADE, + PATHLENGTH, + ALTIMG, + ACTION, + ADDITIVE, + DOMINANT_BASELINE, + DEFINITIONURL, + HORIZ_ORIGIN_X, + LIMITINGCONEANGLE, + MEDIA, + ONFILTERCHANGE, + OPTIMUM, + RADIUS, + SCRIPTSIZEMULTIPLIER, + STRIKETHROUGH_POSITION, + SCRIPTMINSIZE, + VALIGN, + BACKGROUND, + MARKER_MID, + MARKER_END, + MARKER_START, + MASKUNITS, + MASKCONTENTUNITS, + CELLSPACING, + DECLARE, + FILL, + MAXLENGTH, + ONBLUR, + ROWLINES, + STYLE, + TITLE, + AZIMUTH, + FRAMEBORDER, + FRAMESPACING, + FORM, + PRIMITIVEUNITS, + STEMH, + SEAMLESS, + USEMAP, + ASYNC, + IN, + KERNELMATRIX, + KERNELUNITLENGTH, + OPEN, + ONEND, + POINTER_EVENTS, + POINTSATX, + POINTSATZ, + STANDBY, + TRANSFORM, + WHEN, + XLINK_TITLE, + XLINK_ARCROLE, + XMLNS, + XLINK_SHOW, + AUTOPLAY, + AUTOCOMPLETE, + BGCOLOR, + COLOR_RENDERING, + COLOR, + ENCODING, + FLOOD_COLOR, + IDEOGRAPHIC, + PANOSE_1, + NOMODULE, ONBOUNCE, ONROWSINSERTED, ONROWENTER, @@ -1946,33 +1947,34 @@ public final class AttributeName BASEFREQUENCY, BASEPROFILE, BASE, + CODETYPE, }; private final static int[] ATTRIBUTE_HASHES = { - 1891069765, - 1756360955, + 1891098437, + 1756426572, 1972151670, 1740096054, - 1814656840, + 1814986837, 1922419228, 2004199576, 1680411449, - 1754606246, - 1785174319, - 1854466380, - 1910441773, + 1754612424, + 1786622296, + 1854474395, + 1910487243, 1932959284, 1988132214, 2017010843, 1037879561, 1691145478, - 1749350104, - 1754860110, - 1758018291, - 1801312388, - 1823580230, - 1873656984, - 1905754853, - 1917295176, + 1749399124, + 1754860396, + 1759379608, + 1803561214, + 1823829083, + 1874261045, + 1905902311, + 1917327080, 1922679531, 1941409583, 1972996699, @@ -1984,20 +1986,20 @@ public final class AttributeName 1683805446, 1723336432, 1747939528, - 1752985897, - 1754698327, - 1754927689, - 1756804936, - 1773606972, - 1787699221, - 1804405895, - 1820262641, - 1825437894, - 1866496199, - 1884142379, - 1900544002, - 1907701479, - 1915295948, + 1753049109, + 1754751622, + 1754958648, + 1756836998, + 1776114564, + 1788254870, + 1804978712, + 1820637455, + 1825677514, + 1867448617, + 1884246821, + 1902640276, + 1908195085, + 1915341049, 1922319046, 1922630475, 1924517489, @@ -2020,36 +2022,36 @@ public final class AttributeName 1714745560, 1732771842, 1747348637, - 1748566068, - 1751507685, - 1754214628, - 1754645079, - 1754798923, - 1754872618, - 1756190926, - 1756704824, - 1757053236, - 1767875272, - 1781007934, - 1786821704, - 1791068279, - 1804054854, - 1814517574, - 1816178925, - 1821755934, - 1824005974, - 1854285018, - 1854497008, - 1871251689, - 1874788501, - 1884343396, - 1891937366, - 1903759600, - 1906419001, - 1909819252, - 1910527802, - 1916247343, - 1919297291, + 1748869205, + 1751649130, + 1754434872, + 1754647068, + 1754835516, + 1754899031, + 1756219733, + 1756710661, + 1757421892, + 1771569964, + 1782518297, + 1786851500, + 1791070327, + 1804069019, + 1814558026, + 1817175115, + 1821958888, + 1824081655, + 1854302364, + 1864698185, + 1872034503, + 1875753052, + 1889569526, + 1894552650, + 1905541832, + 1906421049, + 1910328970, + 1910572893, + 1916278099, + 1921061206, 1922400908, 1922566877, 1922665179, @@ -2093,66 +2095,66 @@ public final class AttributeName 1734404167, 1742183484, 1747792072, - 1748503880, - 1748971848, - 1749856356, - 1751679545, - 1753297133, - 1754546894, - 1754643237, - 1754647074, - 1754792749, - 1754858317, - 1754860400, - 1754905345, - 1756147974, - 1756265690, - 1756428495, - 1756737685, - 1756874572, - 1757874716, - 1765800271, - 1771637325, - 1780879045, - 1784574102, - 1786740932, - 1787193500, - 1788842244, - 1797666394, - 1803839644, - 1804081401, - 1805715690, - 1814560070, - 1816104145, - 1817175198, - 1820727381, - 1822002839, - 1823841492, - 1824159037, - 1848600826, - 1854366938, - 1854497001, - 1865910331, - 1867462756, - 1872343590, - 1874270021, - 1881750231, - 1884267068, - 1889633006, - 1891182792, - 1898415413, - 1903612236, - 1905628916, - 1906408542, - 1906423097, - 1908462185, - 1910441627, - 1910503637, - 1915025672, - 1915757815, - 1916286197, - 1917857531, - 1921880376, + 1748552744, + 1749027145, + 1751232761, + 1751755561, + 1753550036, + 1754579720, + 1754644293, + 1754647353, + 1754794646, + 1754860061, + 1754860401, + 1754907227, + 1756155098, + 1756302628, + 1756471625, + 1756762256, + 1756889417, + 1757942610, + 1767725700, + 1772032615, + 1780975314, + 1784643703, + 1786775671, + 1787365531, + 1790814502, + 1797886599, + 1804036350, + 1804235064, + 1805715716, + 1814656326, + 1816144023, + 1817177246, + 1820928104, + 1823574314, + 1823975206, + 1824377064, + 1853862084, + 1854464212, + 1854497003, + 1865910347, + 1867620412, + 1873590471, + 1874698443, + 1884079398, + 1884295780, + 1890996553, + 1891186903, + 1898428101, + 1903659239, + 1905672729, + 1906408598, + 1907660596, + 1909438149, + 1910441770, + 1910507338, + 1915146282, + 1916210285, + 1916337499, + 1917953597, + 1921894426, 1922384591, 1922413292, 1922482777, @@ -2240,125 +2242,125 @@ public final class AttributeName 1747455030, 1747839118, 1748306996, - 1748552744, - 1748869205, - 1749027145, - 1749399124, - 1751232761, - 1751649130, - 1751755561, - 1753049109, - 1753550036, - 1754434872, - 1754579720, - 1754612424, - 1754644293, - 1754647068, - 1754647353, - 1754751622, - 1754794646, - 1754835516, - 1754860061, - 1754860396, - 1754860401, - 1754899031, - 1754907227, - 1754958648, - 1756155098, - 1756219733, - 1756302628, - 1756426572, - 1756471625, - 1756710661, - 1756762256, - 1756836998, - 1756889417, - 1757421892, - 1757942610, - 1759379608, - 1767725700, - 1771569964, - 1772032615, - 1776114564, - 1780975314, - 1782518297, - 1784643703, - 1786622296, - 1786775671, - 1786851500, - 1787365531, - 1788254870, - 1790814502, - 1791070327, - 1797886599, - 1803561214, - 1804036350, - 1804069019, - 1804235064, - 1804978712, - 1805715716, - 1814558026, - 1814656326, - 1814986837, - 1816144023, - 1817175115, - 1817177246, - 1820637455, - 1820928104, - 1821958888, - 1823574314, - 1823829083, - 1823975206, - 1824081655, - 1824377064, - 1825677514, - 1853862084, - 1854302364, - 1854464212, - 1854474395, - 1854497003, - 1864698185, - 1865910347, - 1867448617, - 1867620412, - 1872034503, - 1873590471, - 1874261045, - 1874698443, - 1875753052, - 1884079398, - 1884246821, - 1884295780, - 1889569526, - 1890996553, - 1891098437, - 1891186903, - 1894552650, - 1898428101, - 1902640276, - 1903659239, - 1905541832, - 1905672729, - 1905902311, - 1906408598, - 1906421049, - 1907660596, - 1908195085, - 1909438149, - 1910328970, - 1910441770, - 1910487243, - 1910507338, - 1910572893, - 1915146282, - 1915341049, - 1916210285, - 1916278099, - 1916337499, - 1917327080, - 1917953597, - 1921061206, - 1921894426, + 1748566068, + 1748971848, + 1749350104, + 1749856356, + 1751507685, + 1751679545, + 1752985897, + 1753297133, + 1754214628, + 1754546894, + 1754606246, + 1754643237, + 1754645079, + 1754647074, + 1754698327, + 1754792749, + 1754798923, + 1754858317, + 1754860110, + 1754860400, + 1754872618, + 1754905345, + 1754927689, + 1756147974, + 1756190926, + 1756265690, + 1756360955, + 1756428495, + 1756704824, + 1756737685, + 1756804936, + 1756874572, + 1757053236, + 1757874716, + 1758018291, + 1765800271, + 1767875272, + 1771637325, + 1773606972, + 1780879045, + 1781007934, + 1784574102, + 1785174319, + 1786740932, + 1786821704, + 1787193500, + 1787699221, + 1788842244, + 1791068279, + 1797666394, + 1801312388, + 1803839644, + 1804054854, + 1804081401, + 1804405895, + 1805715690, + 1814517574, + 1814560070, + 1814656840, + 1816104145, + 1816178925, + 1817175198, + 1820262641, + 1820727381, + 1821755934, + 1822002839, + 1823580230, + 1823841492, + 1824005974, + 1824159037, + 1825437894, + 1848600826, + 1854285018, + 1854366938, + 1854466380, + 1854497001, + 1854497008, + 1865910331, + 1866496199, + 1867462756, + 1871251689, + 1872343590, + 1873656984, + 1874270021, + 1874788501, + 1881750231, + 1884142379, + 1884267068, + 1884343396, + 1889633006, + 1891069765, + 1891182792, + 1891937366, + 1898415413, + 1900544002, + 1903612236, + 1903759600, + 1905628916, + 1905754853, + 1906408542, + 1906419001, + 1906423097, + 1907701479, + 1908462185, + 1909819252, + 1910441627, + 1910441773, + 1910503637, + 1910527802, + 1915025672, + 1915295948, + 1915757815, + 1916247343, + 1916286197, + 1917295176, + 1917857531, + 1919297291, + 1921880376, + 1921977416, 1922354008, 1922384686, 1922413290, @@ -2532,5 +2534,6 @@ public final class AttributeName 1747800157, 1747906667, 1748021284, + 1748503880, }; } diff --git a/parser/html/nsHtml5AtomList.h b/parser/html/nsHtml5AtomList.h index 6c8874dde..bd53b5a42 100644 --- a/parser/html/nsHtml5AtomList.h +++ b/parser/html/nsHtml5AtomList.h @@ -446,6 +446,7 @@ HTML5_ATOM(lquote, "lquote") HTML5_ATOM(panose_1, "panose-1") HTML5_ATOM(numoctaves, "numoctaves") HTML5_ATOM(numOctaves, "numOctaves") +HTML5_ATOM(nomodule, "nomodule") HTML5_ATOM(onload, "onload") HTML5_ATOM(onbounce, "onbounce") HTML5_ATOM(oncontrolselect, "oncontrolselect") diff --git a/parser/html/nsHtml5AttributeName.cpp b/parser/html/nsHtml5AttributeName.cpp index 2b1ffd507..6bb9a8a16 100644 --- a/parser/html/nsHtml5AttributeName.cpp +++ b/parser/html/nsHtml5AttributeName.cpp @@ -546,6 +546,7 @@ nsHtml5AttributeName* nsHtml5AttributeName::ATTR_IDEOGRAPHIC = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_LQUOTE = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_PANOSE_1 = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_NUMOCTAVES = nullptr; +nsHtml5AttributeName* nsHtml5AttributeName::ATTR_NOMODULE = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ONLOAD = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ONBOUNCE = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ONCONTROLSELECT = nullptr; @@ -747,7 +748,7 @@ nsHtml5AttributeName* nsHtml5AttributeName::ATTR_VERYTHICKMATHSPACE = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_VERYVERYTHINMATHSPACE = nullptr; nsHtml5AttributeName* nsHtml5AttributeName::ATTR_VERYVERYTHICKMATHSPACE = nullptr; nsHtml5AttributeName** nsHtml5AttributeName::ATTRIBUTE_NAMES = 0; -static int32_t const ATTRIBUTE_HASHES_DATA[] = { 1891069765, 1756360955, 1972151670, 1740096054, 1814656840, 1922419228, 2004199576, 1680411449, 1754606246, 1785174319, 1854466380, 1910441773, 1932959284, 1988132214, 2017010843, 1037879561, 1691145478, 1749350104, 1754860110, 1758018291, 1801312388, 1823580230, 1873656984, 1905754853, 1917295176, 1922679531, 1941409583, 1972996699, 2000162011, 2009059485, 2065170434, 71303169, 1680185931, 1683805446, 1723336432, 1747939528, 1752985897, 1754698327, 1754927689, 1756804936, 1773606972, 1787699221, 1804405895, 1820262641, 1825437894, 1866496199, 1884142379, 1900544002, 1907701479, 1915295948, 1922319046, 1922630475, 1924517489, 1934970504, 1965349396, 1972904522, 1983347764, 1991392548, 2001669450, 2007019632, 2010452700, 2024763702, 2082471938, 57205395, 885522434, 1680165436, 1680311085, 1681694748, 1687751191, 1714745560, 1732771842, 1747348637, 1748566068, 1751507685, 1754214628, 1754645079, 1754798923, 1754872618, 1756190926, 1756704824, 1757053236, 1767875272, 1781007934, 1786821704, 1791068279, 1804054854, 1814517574, 1816178925, 1821755934, 1824005974, 1854285018, 1854497008, 1871251689, 1874788501, 1884343396, 1891937366, 1903759600, 1906419001, 1909819252, 1910527802, 1916247343, 1919297291, 1922400908, 1922566877, 1922665179, 1924206934, 1924629705, 1933369607, 1937777860, 1941454586, 1966439670, 1972744954, 1972922984, 1982640164, 1983461061, 1990062797, 1999273799, 2001578182, 2001814704, 2005925890, 2008084807, 2009079867, 2016711994, 2023146024, 2026975253, 2073034754, 2093791505, 53006051, 60345635, 876085250, 901775362, 1680140893, 1680165613, 1680230940, 1680345685, 1680446153, 1681940503, 1686731997, 1689324870, 1697174123, 1721189160, 1724189239, 1734404167, 1742183484, 1747792072, 1748503880, 1748971848, 1749856356, 1751679545, 1753297133, 1754546894, 1754643237, 1754647074, 1754792749, 1754858317, 1754860400, 1754905345, 1756147974, 1756265690, 1756428495, 1756737685, 1756874572, 1757874716, 1765800271, 1771637325, 1780879045, 1784574102, 1786740932, 1787193500, 1788842244, 1797666394, 1803839644, 1804081401, 1805715690, 1814560070, 1816104145, 1817175198, 1820727381, 1822002839, 1823841492, 1824159037, 1848600826, 1854366938, 1854497001, 1865910331, 1867462756, 1872343590, 1874270021, 1881750231, 1884267068, 1889633006, 1891182792, 1898415413, 1903612236, 1905628916, 1906408542, 1906423097, 1908462185, 1910441627, 1910503637, 1915025672, 1915757815, 1916286197, 1917857531, 1921880376, 1922384591, 1922413292, 1922482777, 1922599757, 1922665052, 1922677495, 1922699851, 1924453467, 1924583073, 1924773438, 1933123337, 1934917290, 1935597338, 1941253366, 1941438085, 1942026440, 1965561677, 1966454567, 1972656710, 1972863609, 1972908839, 1972963917, 1975062341, 1983266615, 1983416119, 1987410233, 1988788535, 1991021879, 1991643278, 2000125224, 2001210183, 2001634459, 2001710299, 2001898808, 2004957380, 2006516551, 2007064812, 2008408414, 2009061533, 2009231684, 2010716309, 2016810187, 2019887833, 2024616088, 2026741958, 2060302634, 2066743298, 2081423362, 2089811970, 2093791509, 52488851, 55077603, 59825747, 64487425, 72351745, 883425282, 894959618, 911736834, 1038141480, 1680159328, 1680165487, 1680181850, 1680198381, 1680251485, 1680323325, 1680347981, 1680433915, 1680511804, 1681844247, 1682440540, 1685882101, 1687503600, 1689048326, 1689839946, 1692408896, 1704262346, 1715466295, 1721347639, 1723340621, 1724238365, 1733919469, 1739583824, 1740130375, 1747299630, 1747455030, 1747839118, 1748306996, 1748552744, 1748869205, 1749027145, 1749399124, 1751232761, 1751649130, 1751755561, 1753049109, 1753550036, 1754434872, 1754579720, 1754612424, 1754644293, 1754647068, 1754647353, 1754751622, 1754794646, 1754835516, 1754860061, 1754860396, 1754860401, 1754899031, 1754907227, 1754958648, 1756155098, 1756219733, 1756302628, 1756426572, 1756471625, 1756710661, 1756762256, 1756836998, 1756889417, 1757421892, 1757942610, 1759379608, 1767725700, 1771569964, 1772032615, 1776114564, 1780975314, 1782518297, 1784643703, 1786622296, 1786775671, 1786851500, 1787365531, 1788254870, 1790814502, 1791070327, 1797886599, 1803561214, 1804036350, 1804069019, 1804235064, 1804978712, 1805715716, 1814558026, 1814656326, 1814986837, 1816144023, 1817175115, 1817177246, 1820637455, 1820928104, 1821958888, 1823574314, 1823829083, 1823975206, 1824081655, 1824377064, 1825677514, 1853862084, 1854302364, 1854464212, 1854474395, 1854497003, 1864698185, 1865910347, 1867448617, 1867620412, 1872034503, 1873590471, 1874261045, 1874698443, 1875753052, 1884079398, 1884246821, 1884295780, 1889569526, 1890996553, 1891098437, 1891186903, 1894552650, 1898428101, 1902640276, 1903659239, 1905541832, 1905672729, 1905902311, 1906408598, 1906421049, 1907660596, 1908195085, 1909438149, 1910328970, 1910441770, 1910487243, 1910507338, 1910572893, 1915146282, 1915341049, 1916210285, 1916278099, 1916337499, 1917327080, 1917953597, 1921061206, 1921894426, 1922354008, 1922384686, 1922413290, 1922413307, 1922470745, 1922531929, 1922567078, 1922607670, 1922632396, 1922665174, 1922671417, 1922679386, 1922679610, 1923088386, 1924443742, 1924462384, 1924570799, 1924585254, 1924738716, 1932870919, 1932986153, 1933145837, 1933508940, 1934917372, 1935099626, 1937336473, 1939976792, 1941286708, 1941435445, 1941440197, 1941550652, 1943317364, 1965512429, 1966384692, 1966442279, 1971855414, 1972196486, 1972744939, 1972750880, 1972904518, 1972904785, 1972909592, 1972962123, 1972980466, 1974849131, 1982254612, 1983157559, 1983290011, 1983398182, 1983432389, 1984430082, 1987422362, 1988784439, 1989522022, 1990107683, 1991220282, 1991625270, 1993343287, 2000096287, 2000160071, 2000752725, 2001527900, 2001634458, 2001669449, 2001710298, 2001732764, 2001826027, 2001898809, 2004846654, 2005342360, 2006459190, 2006824246, 2007021895, 2007064819, 2008401563, 2009041198, 2009061450, 2009071951, 2009141482, 2009434924, 2010542150, 2015950026, 2016787611, 2016910397, 2018908874, 2023011418, 2023342821, 2024647008, 2024794274, 2026893641, 2034765641, 2060474743, 2065694722, 2066762276, 2075005220, 2081947650, 2083520514, 2091784484, 2093791506, 2093791510, 50917059, 52489043, 53537523, 56685811, 57210387, 59830867, 60817409, 68157441, 71827457, 808872090, 878182402, 884998146, 892862466, 900202498, 902299650, 928514050, 1038063816, 1680095865, 1680159327, 1680165421, 1680165437, 1680165533, 1680165692, 1680181996, 1680198203, 1680229115, 1680231247, 1680282148, 1680315086, 1680343801, 1680345965, 1680368221, 1680413393, 1680437801, 1680452349, 1681174213, 1681733672, 1681879063, 1681969220, 1682587945, 1684319541, 1685902598, 1687164232, 1687620127, 1687751377, 1689130184, 1689788441, 1691091102, 1691293817, 1692933184, 1699185409, 1704526375, 1714763319, 1716303957, 1721305962, 1723309623, 1723336528, 1723645710, 1724197420, 1731048742, 1733874289, 1734182982, 1739561208, 1739927860, 1740119884, 1741535501, 1747295467, 1747309881, 1747446838, 1747479606, 1747800157, 1747906667, 1748021284 }; +static int32_t const ATTRIBUTE_HASHES_DATA[] = { 1891098437, 1756426572, 1972151670, 1740096054, 1814986837, 1922419228, 2004199576, 1680411449, 1754612424, 1786622296, 1854474395, 1910487243, 1932959284, 1988132214, 2017010843, 1037879561, 1691145478, 1749399124, 1754860396, 1759379608, 1803561214, 1823829083, 1874261045, 1905902311, 1917327080, 1922679531, 1941409583, 1972996699, 2000162011, 2009059485, 2065170434, 71303169, 1680185931, 1683805446, 1723336432, 1747939528, 1753049109, 1754751622, 1754958648, 1756836998, 1776114564, 1788254870, 1804978712, 1820637455, 1825677514, 1867448617, 1884246821, 1902640276, 1908195085, 1915341049, 1922319046, 1922630475, 1924517489, 1934970504, 1965349396, 1972904522, 1983347764, 1991392548, 2001669450, 2007019632, 2010452700, 2024763702, 2082471938, 57205395, 885522434, 1680165436, 1680311085, 1681694748, 1687751191, 1714745560, 1732771842, 1747348637, 1748869205, 1751649130, 1754434872, 1754647068, 1754835516, 1754899031, 1756219733, 1756710661, 1757421892, 1771569964, 1782518297, 1786851500, 1791070327, 1804069019, 1814558026, 1817175115, 1821958888, 1824081655, 1854302364, 1864698185, 1872034503, 1875753052, 1889569526, 1894552650, 1905541832, 1906421049, 1910328970, 1910572893, 1916278099, 1921061206, 1922400908, 1922566877, 1922665179, 1924206934, 1924629705, 1933369607, 1937777860, 1941454586, 1966439670, 1972744954, 1972922984, 1982640164, 1983461061, 1990062797, 1999273799, 2001578182, 2001814704, 2005925890, 2008084807, 2009079867, 2016711994, 2023146024, 2026975253, 2073034754, 2093791505, 53006051, 60345635, 876085250, 901775362, 1680140893, 1680165613, 1680230940, 1680345685, 1680446153, 1681940503, 1686731997, 1689324870, 1697174123, 1721189160, 1724189239, 1734404167, 1742183484, 1747792072, 1748552744, 1749027145, 1751232761, 1751755561, 1753550036, 1754579720, 1754644293, 1754647353, 1754794646, 1754860061, 1754860401, 1754907227, 1756155098, 1756302628, 1756471625, 1756762256, 1756889417, 1757942610, 1767725700, 1772032615, 1780975314, 1784643703, 1786775671, 1787365531, 1790814502, 1797886599, 1804036350, 1804235064, 1805715716, 1814656326, 1816144023, 1817177246, 1820928104, 1823574314, 1823975206, 1824377064, 1853862084, 1854464212, 1854497003, 1865910347, 1867620412, 1873590471, 1874698443, 1884079398, 1884295780, 1890996553, 1891186903, 1898428101, 1903659239, 1905672729, 1906408598, 1907660596, 1909438149, 1910441770, 1910507338, 1915146282, 1916210285, 1916337499, 1917953597, 1921894426, 1922384591, 1922413292, 1922482777, 1922599757, 1922665052, 1922677495, 1922699851, 1924453467, 1924583073, 1924773438, 1933123337, 1934917290, 1935597338, 1941253366, 1941438085, 1942026440, 1965561677, 1966454567, 1972656710, 1972863609, 1972908839, 1972963917, 1975062341, 1983266615, 1983416119, 1987410233, 1988788535, 1991021879, 1991643278, 2000125224, 2001210183, 2001634459, 2001710299, 2001898808, 2004957380, 2006516551, 2007064812, 2008408414, 2009061533, 2009231684, 2010716309, 2016810187, 2019887833, 2024616088, 2026741958, 2060302634, 2066743298, 2081423362, 2089811970, 2093791509, 52488851, 55077603, 59825747, 64487425, 72351745, 883425282, 894959618, 911736834, 1038141480, 1680159328, 1680165487, 1680181850, 1680198381, 1680251485, 1680323325, 1680347981, 1680433915, 1680511804, 1681844247, 1682440540, 1685882101, 1687503600, 1689048326, 1689839946, 1692408896, 1704262346, 1715466295, 1721347639, 1723340621, 1724238365, 1733919469, 1739583824, 1740130375, 1747299630, 1747455030, 1747839118, 1748306996, 1748566068, 1748971848, 1749350104, 1749856356, 1751507685, 1751679545, 1752985897, 1753297133, 1754214628, 1754546894, 1754606246, 1754643237, 1754645079, 1754647074, 1754698327, 1754792749, 1754798923, 1754858317, 1754860110, 1754860400, 1754872618, 1754905345, 1754927689, 1756147974, 1756190926, 1756265690, 1756360955, 1756428495, 1756704824, 1756737685, 1756804936, 1756874572, 1757053236, 1757874716, 1758018291, 1765800271, 1767875272, 1771637325, 1773606972, 1780879045, 1781007934, 1784574102, 1785174319, 1786740932, 1786821704, 1787193500, 1787699221, 1788842244, 1791068279, 1797666394, 1801312388, 1803839644, 1804054854, 1804081401, 1804405895, 1805715690, 1814517574, 1814560070, 1814656840, 1816104145, 1816178925, 1817175198, 1820262641, 1820727381, 1821755934, 1822002839, 1823580230, 1823841492, 1824005974, 1824159037, 1825437894, 1848600826, 1854285018, 1854366938, 1854466380, 1854497001, 1854497008, 1865910331, 1866496199, 1867462756, 1871251689, 1872343590, 1873656984, 1874270021, 1874788501, 1881750231, 1884142379, 1884267068, 1884343396, 1889633006, 1891069765, 1891182792, 1891937366, 1898415413, 1900544002, 1903612236, 1903759600, 1905628916, 1905754853, 1906408542, 1906419001, 1906423097, 1907701479, 1908462185, 1909819252, 1910441627, 1910441773, 1910503637, 1910527802, 1915025672, 1915295948, 1915757815, 1916247343, 1916286197, 1917295176, 1917857531, 1919297291, 1921880376, 1921977416, 1922354008, 1922384686, 1922413290, 1922413307, 1922470745, 1922531929, 1922567078, 1922607670, 1922632396, 1922665174, 1922671417, 1922679386, 1922679610, 1923088386, 1924443742, 1924462384, 1924570799, 1924585254, 1924738716, 1932870919, 1932986153, 1933145837, 1933508940, 1934917372, 1935099626, 1937336473, 1939976792, 1941286708, 1941435445, 1941440197, 1941550652, 1943317364, 1965512429, 1966384692, 1966442279, 1971855414, 1972196486, 1972744939, 1972750880, 1972904518, 1972904785, 1972909592, 1972962123, 1972980466, 1974849131, 1982254612, 1983157559, 1983290011, 1983398182, 1983432389, 1984430082, 1987422362, 1988784439, 1989522022, 1990107683, 1991220282, 1991625270, 1993343287, 2000096287, 2000160071, 2000752725, 2001527900, 2001634458, 2001669449, 2001710298, 2001732764, 2001826027, 2001898809, 2004846654, 2005342360, 2006459190, 2006824246, 2007021895, 2007064819, 2008401563, 2009041198, 2009061450, 2009071951, 2009141482, 2009434924, 2010542150, 2015950026, 2016787611, 2016910397, 2018908874, 2023011418, 2023342821, 2024647008, 2024794274, 2026893641, 2034765641, 2060474743, 2065694722, 2066762276, 2075005220, 2081947650, 2083520514, 2091784484, 2093791506, 2093791510, 50917059, 52489043, 53537523, 56685811, 57210387, 59830867, 60817409, 68157441, 71827457, 808872090, 878182402, 884998146, 892862466, 900202498, 902299650, 928514050, 1038063816, 1680095865, 1680159327, 1680165421, 1680165437, 1680165533, 1680165692, 1680181996, 1680198203, 1680229115, 1680231247, 1680282148, 1680315086, 1680343801, 1680345965, 1680368221, 1680413393, 1680437801, 1680452349, 1681174213, 1681733672, 1681879063, 1681969220, 1682587945, 1684319541, 1685902598, 1687164232, 1687620127, 1687751377, 1689130184, 1689788441, 1691091102, 1691293817, 1692933184, 1699185409, 1704526375, 1714763319, 1716303957, 1721305962, 1723309623, 1723336528, 1723645710, 1724197420, 1731048742, 1733874289, 1734182982, 1739561208, 1739927860, 1740119884, 1741535501, 1747295467, 1747309881, 1747446838, 1747479606, 1747800157, 1747906667, 1748021284, 1748503880 }; staticJArray nsHtml5AttributeName::ATTRIBUTE_HASHES = { ATTRIBUTE_HASHES_DATA, MOZ_ARRAY_LENGTH(ATTRIBUTE_HASHES_DATA) }; void nsHtml5AttributeName::initializeStatics() @@ -1168,6 +1169,7 @@ nsHtml5AttributeName::initializeStatics() ATTR_LQUOTE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsHtml5Atoms::lquote), ALL_NO_PREFIX); ATTR_PANOSE_1 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsHtml5Atoms::panose_1), ALL_NO_PREFIX); ATTR_NUMOCTAVES = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsHtml5Atoms::numoctaves, nsHtml5Atoms::numOctaves), ALL_NO_PREFIX); + ATTR_NOMODULE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsHtml5Atoms::nomodule), ALL_NO_PREFIX); ATTR_ONLOAD = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsHtml5Atoms::onload), ALL_NO_PREFIX); ATTR_ONBOUNCE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsHtml5Atoms::onbounce), ALL_NO_PREFIX); ATTR_ONCONTROLSELECT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsHtml5Atoms::oncontrolselect), ALL_NO_PREFIX); @@ -1368,32 +1370,32 @@ nsHtml5AttributeName::initializeStatics() ATTR_VERYTHICKMATHSPACE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsHtml5Atoms::verythickmathspace), ALL_NO_PREFIX); ATTR_VERYVERYTHINMATHSPACE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsHtml5Atoms::veryverythinmathspace), ALL_NO_PREFIX); ATTR_VERYVERYTHICKMATHSPACE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsHtml5Atoms::veryverythickmathspace), ALL_NO_PREFIX); - ATTRIBUTE_NAMES = new nsHtml5AttributeName*[584]; - ATTRIBUTE_NAMES[0] = ATTR_STEMH; - ATTRIBUTE_NAMES[1] = ATTR_REPEATCOUNT; + ATTRIBUTE_NAMES = new nsHtml5AttributeName*[585]; + ATTRIBUTE_NAMES[0] = ATTR_STEMV; + ATTRIBUTE_NAMES[1] = ATTR_REPEAT_START; ATTRIBUTE_NAMES[2] = ATTR_NOWRAP; ATTRIBUTE_NAMES[3] = ATTR_SRCDOC; - ATTRIBUTE_NAMES[4] = ATTR_ADDITIVE; + ATTRIBUTE_NAMES[4] = ATTR_BEGIN; ATTRIBUTE_NAMES[5] = ATTR_ONFORMCHANGE; ATTRIBUTE_NAMES[6] = ATTR_KEYTIMES; ATTRIBUTE_NAMES[7] = ATTR_ARIA_SORT; - ATTRIBUTE_NAMES[8] = ATTR_OBJECT; - ATTRIBUTE_NAMES[9] = ATTR_IMAGE_RENDERING; - ATTRIBUTE_NAMES[10] = ATTR_MARKER_START; - ATTRIBUTE_NAMES[11] = ATTR_XLINK_ARCROLE; + ATTRIBUTE_NAMES[8] = ATTR_ONSELECT; + ATTRIBUTE_NAMES[9] = ATTR_LANGUAGE; + ATTRIBUTE_NAMES[10] = ATTR_MARKERWIDTH; + ATTRIBUTE_NAMES[11] = ATTR_XMLNS_XLINK; ATTRIBUTE_NAMES[12] = ATTR_CLIP; ATTRIBUTE_NAMES[13] = ATTR_LOWSRC; ATTRIBUTE_NAMES[14] = ATTR_COLUMNWIDTH; ATTRIBUTE_NAMES[15] = ATTR_XML_SPACE; ATTRIBUTE_NAMES[16] = ATTR_VSPACE; - ATTRIBUTE_NAMES[17] = ATTR_EDGEMODE; - ATTRIBUTE_NAMES[18] = ATTR_ONBEFOREUPDATE; - ATTRIBUTE_NAMES[19] = ATTR_UNDERLINE_THICKNESS; - ATTRIBUTE_NAMES[20] = ATTR_HIGH; - ATTRIBUTE_NAMES[21] = ATTR_RADIUS; - ATTRIBUTE_NAMES[22] = ATTR_ROWLINES; - ATTRIBUTE_NAMES[23] = ATTR_ONEND; - ATTRIBUTE_NAMES[24] = ATTR_ENCODING; + ATTRIBUTE_NAMES[17] = ATTR_EDGE; + ATTRIBUTE_NAMES[18] = ATTR_ONDEACTIVATE; + ATTRIBUTE_NAMES[19] = ATTR_X_HEIGHT; + ATTRIBUTE_NAMES[20] = ATTR_LIGHTING_COLOR; + ATTRIBUTE_NAMES[21] = ATTR_SCRIPTLEVEL; + ATTRIBUTE_NAMES[22] = ATTR_SCALE; + ATTRIBUTE_NAMES[23] = ATTR_ONINPUT; + ATTRIBUTE_NAMES[24] = ATTR_EXPONENT; ATTRIBUTE_NAMES[25] = ATTR_ONFORMINPUT; ATTRIBUTE_NAMES[26] = ATTR_SHAPE_RENDERING; ATTRIBUTE_NAMES[27] = ATTR_ONDRAGLEAVE; @@ -1405,20 +1407,20 @@ nsHtml5AttributeName::initializeStatics() ATTRIBUTE_NAMES[33] = ATTR_HSPACE; ATTRIBUTE_NAMES[34] = ATTR_SPECULAREXPONENT; ATTRIBUTE_NAMES[35] = ATTR_BASELINE; - ATTRIBUTE_NAMES[36] = ATTR_LINEBREAK; - ATTRIBUTE_NAMES[37] = ATTR_ONBEGIN; - ATTRIBUTE_NAMES[38] = ATTR_ONKEYDOWN; - ATTRIBUTE_NAMES[39] = ATTR_STRETCHY; - ATTRIBUTE_NAMES[40] = ATTR_SURFACESCALE; - ATTRIBUTE_NAMES[41] = ATTR_NARGS; - ATTRIBUTE_NAMES[42] = ATTR_NOSHADE; - ATTRIBUTE_NAMES[43] = ATTR_LIMITINGCONEANGLE; - ATTRIBUTE_NAMES[44] = ATTR_VALIGN; - ATTRIBUTE_NAMES[45] = ATTR_DECLARE; - ATTRIBUTE_NAMES[46] = ATTR_FRAMEBORDER; - ATTRIBUTE_NAMES[47] = ATTR_IN; - ATTRIBUTE_NAMES[48] = ATTR_STANDBY; - ATTRIBUTE_NAMES[49] = ATTR_AUTOCOMPLETE; + ATTRIBUTE_NAMES[36] = ATTR_LABEL; + ATTRIBUTE_NAMES[37] = ATTR_ONHELP; + ATTRIBUTE_NAMES[38] = ATTR_ONRESIZE; + ATTRIBUTE_NAMES[39] = ATTR_SCHEME; + ATTRIBUTE_NAMES[40] = ATTR_XREF; + ATTRIBUTE_NAMES[41] = ATTR_ORIGIN; + ATTRIBUTE_NAMES[42] = ATTR_ONCHANGE; + ATTRIBUTE_NAMES[43] = ATTR_MEDIUMMATHSPACE; + ATTRIBUTE_NAMES[44] = ATTR_VISIBILITY; + ATTRIBUTE_NAMES[45] = ATTR_FILL_RULE; + ATTRIBUTE_NAMES[46] = ATTR_FRAME; + ATTRIBUTE_NAMES[47] = ATTR_ICON; + ATTRIBUTE_NAMES[48] = ATTR_THINMATHSPACE; + ATTRIBUTE_NAMES[49] = ATTR_AUTOFOCUS; ATTRIBUTE_NAMES[50] = ATTR_ONLOAD; ATTRIBUTE_NAMES[51] = ATTR_ONMOVESTART; ATTRIBUTE_NAMES[52] = ATTR_STROKE_DASHOFFSET; @@ -1441,36 +1443,36 @@ nsHtml5AttributeName::initializeStatics() ATTRIBUTE_NAMES[69] = ATTR_CALCMODE; ATTRIBUTE_NAMES[70] = ATTR_ID; ATTRIBUTE_NAMES[71] = ATTR_ACCENT_HEIGHT; - ATTRIBUTE_NAMES[72] = ATTR_CITE; - ATTRIBUTE_NAMES[73] = ATTR_INDEX; - ATTRIBUTE_NAMES[74] = ATTR_NAME; - ATTRIBUTE_NAMES[75] = ATTR_ONRESET; - ATTRIBUTE_NAMES[76] = ATTR_ORIENTATION; - ATTRIBUTE_NAMES[77] = ATTR_ONKEYPRESS; - ATTRIBUTE_NAMES[78] = ATTR_REFERRERPOLICY; - ATTRIBUTE_NAMES[79] = ATTR_SELECTED; - ATTRIBUTE_NAMES[80] = ATTR_SIZE; - ATTRIBUTE_NAMES[81] = ATTR_HREFLANG; - ATTRIBUTE_NAMES[82] = ATTR_ALIGNMENTSCOPE; - ATTRIBUTE_NAMES[83] = ATTR_LONGDESC; - ATTRIBUTE_NAMES[84] = ATTR_TARGETX; - ATTRIBUTE_NAMES[85] = ATTR_METHOD; - ATTRIBUTE_NAMES[86] = ATTR_ALTIMG; - ATTRIBUTE_NAMES[87] = ATTR_DEFINITIONURL; - ATTRIBUTE_NAMES[88] = ATTR_ONFILTERCHANGE; - ATTRIBUTE_NAMES[89] = ATTR_STRIKETHROUGH_POSITION; - ATTRIBUTE_NAMES[90] = ATTR_MARKER_MID; - ATTRIBUTE_NAMES[91] = ATTR_MASKCONTENTUNITS; - ATTRIBUTE_NAMES[92] = ATTR_MAXLENGTH; - ATTRIBUTE_NAMES[93] = ATTR_TITLE; - ATTRIBUTE_NAMES[94] = ATTR_FORM; - ATTRIBUTE_NAMES[95] = ATTR_USEMAP; - ATTRIBUTE_NAMES[96] = ATTR_KERNELUNITLENGTH; - ATTRIBUTE_NAMES[97] = ATTR_POINTSATX; - ATTRIBUTE_NAMES[98] = ATTR_WHEN; - ATTRIBUTE_NAMES[99] = ATTR_XLINK_SHOW; - ATTRIBUTE_NAMES[100] = ATTR_COLOR_RENDERING; - ATTRIBUTE_NAMES[101] = ATTR_IDEOGRAPHIC; + ATTRIBUTE_NAMES[72] = ATTR_DEFER; + ATTRIBUTE_NAMES[73] = ATTR_IRRELEVANT; + ATTRIBUTE_NAMES[74] = ATTR_NORESIZE; + ATTRIBUTE_NAMES[75] = ATTR_ONCELLCHANGE; + ATTRIBUTE_NAMES[76] = ATTR_ONBEFORECOPY; + ATTRIBUTE_NAMES[77] = ATTR_ONKEYUP; + ATTRIBUTE_NAMES[78] = ATTR_RULES; + ATTRIBUTE_NAMES[79] = ATTR_SPEED; + ATTRIBUTE_NAMES[80] = ATTR_TYPE; + ATTRIBUTE_NAMES[81] = ATTR_ONAFTERPRINT; + ATTRIBUTE_NAMES[82] = ATTR_DRAGGABLE; + ATTRIBUTE_NAMES[83] = ATTR_LENGTHADJUST; + ATTRIBUTE_NAMES[84] = ATTR_TARGETY; + ATTRIBUTE_NAMES[85] = ATTR_MATHVARIANT; + ATTRIBUTE_NAMES[86] = ATTR_ACTIONTYPE; + ATTRIBUTE_NAMES[87] = ATTR_HORIZ_ADV_X; + ATTRIBUTE_NAMES[88] = ATTR_ONFINISH; + ATTRIBUTE_NAMES[89] = ATTR_STRIKETHROUGH_THICKNESS; + ATTRIBUTE_NAMES[90] = ATTR_MARKERHEIGHT; + ATTRIBUTE_NAMES[91] = ATTR_AMPLITUDE; + ATTRIBUTE_NAMES[92] = ATTR_ONCLICK; + ATTRIBUTE_NAMES[93] = ATTR_V_ALPHABETIC; + ATTRIBUTE_NAMES[94] = ATTR_PROMPT; + ATTRIBUTE_NAMES[95] = ATTR_ZOOMANDPAN; + ATTRIBUTE_NAMES[96] = ATTR_ONUNLOAD; + ATTRIBUTE_NAMES[97] = ATTR_POINTSATY; + ATTRIBUTE_NAMES[98] = ATTR_XLINK_HREF; + ATTRIBUTE_NAMES[99] = ATTR_XLINK_ACTUATE; + ATTRIBUTE_NAMES[100] = ATTR_COLOR_INTERPOLATION; + ATTRIBUTE_NAMES[101] = ATTR_LQUOTE; ATTRIBUTE_NAMES[102] = ATTR_ONMOUSEWHEEL; ATTRIBUTE_NAMES[103] = ATTR_ONCONTEXTMENU; ATTRIBUTE_NAMES[104] = ATTR_ONMOUSEMOVE; @@ -1514,66 +1516,66 @@ nsHtml5AttributeName::initializeStatics() ATTRIBUTE_NAMES[142] = ATTR_HEADERS; ATTRIBUTE_NAMES[143] = ATTR_WORD_SPACING; ATTRIBUTE_NAMES[144] = ATTR_BEVELLED; - ATTRIBUTE_NAMES[145] = ATTR_CODETYPE; - ATTRIBUTE_NAMES[146] = ATTR_DATETIME; - ATTRIBUTE_NAMES[147] = ATTR_FACE; - ATTRIBUTE_NAMES[148] = ATTR_INTERCEPT; - ATTRIBUTE_NAMES[149] = ATTR_LINETHICKNESS; - ATTRIBUTE_NAMES[150] = ATTR_ONBEFOREUNLOAD; - ATTRIBUTE_NAMES[151] = ATTR_ORDER; - ATTRIBUTE_NAMES[152] = ATTR_ONREADYSTATECHANGE; - ATTRIBUTE_NAMES[153] = ATTR_ONBEFOREPRINT; - ATTRIBUTE_NAMES[154] = ATTR_ONSELECTSTART; - ATTRIBUTE_NAMES[155] = ATTR_ONBEFOREACTIVATE; - ATTRIBUTE_NAMES[156] = ATTR_ONBEFOREEDITFOCUS; - ATTRIBUTE_NAMES[157] = ATTR_REPEAT; - ATTRIBUTE_NAMES[158] = ATTR_REPEAT_MIN; - ATTRIBUTE_NAMES[159] = ATTR_REPEAT_TEMPLATE; - ATTRIBUTE_NAMES[160] = ATTR_SIZES; - ATTRIBUTE_NAMES[161] = ATTR_SPREADMETHOD; - ATTRIBUTE_NAMES[162] = ATTR_UNSELECTABLE; - ATTRIBUTE_NAMES[163] = ATTR_DIFFUSECONSTANT; - ATTRIBUTE_NAMES[164] = ATTR_ONAFTERUPDATE; - ATTRIBUTE_NAMES[165] = ATTR_ALIGN; - ATTRIBUTE_NAMES[166] = ATTR_HEIGHT; - ATTRIBUTE_NAMES[167] = ATTR_LANG; - ATTRIBUTE_NAMES[168] = ATTR_MARGINHEIGHT; - ATTRIBUTE_NAMES[169] = ATTR_PING; - ATTRIBUTE_NAMES[170] = ATTR_ALPHABETIC; - ATTRIBUTE_NAMES[171] = ATTR_MATHEMATICAL; - ATTRIBUTE_NAMES[172] = ATTR_MATHCOLOR; - ATTRIBUTE_NAMES[173] = ATTR_PATHLENGTH; - ATTRIBUTE_NAMES[174] = ATTR_ACTION; - ATTRIBUTE_NAMES[175] = ATTR_DOMINANT_BASELINE; - ATTRIBUTE_NAMES[176] = ATTR_HORIZ_ORIGIN_X; - ATTRIBUTE_NAMES[177] = ATTR_MEDIA; - ATTRIBUTE_NAMES[178] = ATTR_OPTIMUM; - ATTRIBUTE_NAMES[179] = ATTR_SCRIPTSIZEMULTIPLIER; - ATTRIBUTE_NAMES[180] = ATTR_SCRIPTMINSIZE; - ATTRIBUTE_NAMES[181] = ATTR_BACKGROUND; - ATTRIBUTE_NAMES[182] = ATTR_MARKER_END; - ATTRIBUTE_NAMES[183] = ATTR_MASKUNITS; - ATTRIBUTE_NAMES[184] = ATTR_CELLSPACING; - ATTRIBUTE_NAMES[185] = ATTR_FILL; - ATTRIBUTE_NAMES[186] = ATTR_ONBLUR; - ATTRIBUTE_NAMES[187] = ATTR_STYLE; - ATTRIBUTE_NAMES[188] = ATTR_AZIMUTH; - ATTRIBUTE_NAMES[189] = ATTR_FRAMESPACING; - ATTRIBUTE_NAMES[190] = ATTR_PRIMITIVEUNITS; - ATTRIBUTE_NAMES[191] = ATTR_SEAMLESS; - ATTRIBUTE_NAMES[192] = ATTR_ASYNC; - ATTRIBUTE_NAMES[193] = ATTR_KERNELMATRIX; - ATTRIBUTE_NAMES[194] = ATTR_OPEN; - ATTRIBUTE_NAMES[195] = ATTR_POINTER_EVENTS; - ATTRIBUTE_NAMES[196] = ATTR_POINTSATZ; - ATTRIBUTE_NAMES[197] = ATTR_TRANSFORM; - ATTRIBUTE_NAMES[198] = ATTR_XLINK_TITLE; - ATTRIBUTE_NAMES[199] = ATTR_XMLNS; - ATTRIBUTE_NAMES[200] = ATTR_AUTOPLAY; - ATTRIBUTE_NAMES[201] = ATTR_BGCOLOR; - ATTRIBUTE_NAMES[202] = ATTR_COLOR; - ATTRIBUTE_NAMES[203] = ATTR_FLOOD_COLOR; - ATTRIBUTE_NAMES[204] = ATTR_PANOSE_1; + ATTRIBUTE_NAMES[145] = ATTR_CODEBASE; + ATTRIBUTE_NAMES[146] = ATTR_DIRECTION; + ATTRIBUTE_NAMES[147] = ATTR_HIDEFOCUS; + ATTRIBUTE_NAMES[148] = ATTR_INTEGRITY; + ATTRIBUTE_NAMES[149] = ATTR_MODE; + ATTRIBUTE_NAMES[150] = ATTR_ONREPEAT; + ATTRIBUTE_NAMES[151] = ATTR_OTHER; + ATTRIBUTE_NAMES[152] = ATTR_ONMESSAGE; + ATTRIBUTE_NAMES[153] = ATTR_ORIENT; + ATTRIBUTE_NAMES[154] = ATTR_ONBEFOREPASTE; + ATTRIBUTE_NAMES[155] = ATTR_ONBEFORDEACTIVATE; + ATTRIBUTE_NAMES[156] = ATTR_ONBEFORECUT; + ATTRIBUTE_NAMES[157] = ATTR_REPEAT_MAX; + ATTRIBUTE_NAMES[158] = ATTR_ROLE; + ATTRIBUTE_NAMES[159] = ATTR_REPEATDUR; + ATTRIBUTE_NAMES[160] = ATTR_SUPERSCRIPTSHIFT; + ATTRIBUTE_NAMES[161] = ATTR_SELECTION; + ATTRIBUTE_NAMES[162] = ATTR_UNDERLINE_POSITION; + ATTRIBUTE_NAMES[163] = ATTR_HREF; + ATTRIBUTE_NAMES[164] = ATTR_PROFILE; + ATTRIBUTE_NAMES[165] = ATTR_ALIGNMENT_BASELINE; + ATTRIBUTE_NAMES[166] = ATTR_HANGING; + ATTRIBUTE_NAMES[167] = ATTR_LARGEOP; + ATTRIBUTE_NAMES[168] = ATTR_MARGINWIDTH; + ATTRIBUTE_NAMES[169] = ATTR_TARGET; + ATTRIBUTE_NAMES[170] = ATTR_ARCHIVE; + ATTRIBUTE_NAMES[171] = ATTR_MATHBACKGROUND; + ATTRIBUTE_NAMES[172] = ATTR_MATHSIZE; + ATTRIBUTE_NAMES[173] = ATTR_PATH; + ATTRIBUTE_NAMES[174] = ATTR_ACTIVE; + ATTRIBUTE_NAMES[175] = ATTR_DIVISOR; + ATTRIBUTE_NAMES[176] = ATTR_HORIZ_ORIGIN_Y; + ATTRIBUTE_NAMES[177] = ATTR_MANIFEST; + ATTRIBUTE_NAMES[178] = ATTR_RADIOGROUP; + ATTRIBUTE_NAMES[179] = ATTR_STRING; + ATTRIBUTE_NAMES[180] = ATTR_TABINDEX; + ATTRIBUTE_NAMES[181] = ATTR_LINK; + ATTRIBUTE_NAMES[182] = ATTR_MASK; + ATTRIBUTE_NAMES[183] = ATTR_MARKERUNITS; + ATTRIBUTE_NAMES[184] = ATTR_CELLPADDING; + ATTRIBUTE_NAMES[185] = ATTR_FILL_OPACITY; + ATTRIBUTE_NAMES[186] = ATTR_REPLACE; + ATTRIBUTE_NAMES[187] = ATTR_TABLEVALUES; + ATTRIBUTE_NAMES[188] = ATTR_FORMAT; + ATTRIBUTE_NAMES[189] = ATTR_FROM; + ATTRIBUTE_NAMES[190] = ATTR_SYMMETRIC; + ATTRIBUTE_NAMES[191] = ATTR_SUMMARY; + ATTRIBUTE_NAMES[192] = ATTR_ALINK; + ATTRIBUTE_NAMES[193] = ATTR_KERNING; + ATTRIBUTE_NAMES[194] = ATTR_ONINVALID; + ATTRIBUTE_NAMES[195] = ATTR_POINTS; + ATTRIBUTE_NAMES[196] = ATTR_SPAN; + ATTRIBUTE_NAMES[197] = ATTR_VLINK; + ATTRIBUTE_NAMES[198] = ATTR_XLINK_ROLE; + ATTRIBUTE_NAMES[199] = ATTR_XLINK_TYPE; + ATTRIBUTE_NAMES[200] = ATTR_AUTOSUBMIT; + ATTRIBUTE_NAMES[201] = ATTR_COLOR_PROFILE; + ATTRIBUTE_NAMES[202] = ATTR_COLOR_INTERPOLATION_FILTERS; + ATTRIBUTE_NAMES[203] = ATTR_FLOOD_OPACITY; + ATTRIBUTE_NAMES[204] = ATTR_NUMOCTAVES; ATTRIBUTE_NAMES[205] = ATTR_ONCONTROLSELECT; ATTRIBUTE_NAMES[206] = ATTR_ONMOUSEENTER; ATTRIBUTE_NAMES[207] = ATTR_ONROWEXIT; @@ -1661,125 +1663,125 @@ nsHtml5AttributeName::initializeStatics() ATTRIBUTE_NAMES[289] = ATTR_ASCENT; ATTRIBUTE_NAMES[290] = ATTR_BASELINE_SHIFT; ATTRIBUTE_NAMES[291] = ATTR_CODE; - ATTRIBUTE_NAMES[292] = ATTR_CODEBASE; - ATTRIBUTE_NAMES[293] = ATTR_DEFER; - ATTRIBUTE_NAMES[294] = ATTR_DIRECTION; - ATTRIBUTE_NAMES[295] = ATTR_EDGE; - ATTRIBUTE_NAMES[296] = ATTR_HIDEFOCUS; - ATTRIBUTE_NAMES[297] = ATTR_IRRELEVANT; - ATTRIBUTE_NAMES[298] = ATTR_INTEGRITY; - ATTRIBUTE_NAMES[299] = ATTR_LABEL; - ATTRIBUTE_NAMES[300] = ATTR_MODE; - ATTRIBUTE_NAMES[301] = ATTR_NORESIZE; - ATTRIBUTE_NAMES[302] = ATTR_ONREPEAT; - ATTRIBUTE_NAMES[303] = ATTR_ONSELECT; - ATTRIBUTE_NAMES[304] = ATTR_OTHER; - ATTRIBUTE_NAMES[305] = ATTR_ONCELLCHANGE; - ATTRIBUTE_NAMES[306] = ATTR_ONMESSAGE; - ATTRIBUTE_NAMES[307] = ATTR_ONHELP; - ATTRIBUTE_NAMES[308] = ATTR_ORIENT; - ATTRIBUTE_NAMES[309] = ATTR_ONBEFORECOPY; - ATTRIBUTE_NAMES[310] = ATTR_ONBEFOREPASTE; - ATTRIBUTE_NAMES[311] = ATTR_ONDEACTIVATE; - ATTRIBUTE_NAMES[312] = ATTR_ONBEFORDEACTIVATE; - ATTRIBUTE_NAMES[313] = ATTR_ONKEYUP; - ATTRIBUTE_NAMES[314] = ATTR_ONBEFORECUT; - ATTRIBUTE_NAMES[315] = ATTR_ONRESIZE; - ATTRIBUTE_NAMES[316] = ATTR_REPEAT_MAX; - ATTRIBUTE_NAMES[317] = ATTR_RULES; - ATTRIBUTE_NAMES[318] = ATTR_ROLE; - ATTRIBUTE_NAMES[319] = ATTR_REPEAT_START; - ATTRIBUTE_NAMES[320] = ATTR_REPEATDUR; - ATTRIBUTE_NAMES[321] = ATTR_SPEED; - ATTRIBUTE_NAMES[322] = ATTR_SUPERSCRIPTSHIFT; - ATTRIBUTE_NAMES[323] = ATTR_SCHEME; - ATTRIBUTE_NAMES[324] = ATTR_SELECTION; - ATTRIBUTE_NAMES[325] = ATTR_TYPE; - ATTRIBUTE_NAMES[326] = ATTR_UNDERLINE_POSITION; - ATTRIBUTE_NAMES[327] = ATTR_X_HEIGHT; - ATTRIBUTE_NAMES[328] = ATTR_HREF; - ATTRIBUTE_NAMES[329] = ATTR_ONAFTERPRINT; - ATTRIBUTE_NAMES[330] = ATTR_PROFILE; - ATTRIBUTE_NAMES[331] = ATTR_XREF; - ATTRIBUTE_NAMES[332] = ATTR_ALIGNMENT_BASELINE; - ATTRIBUTE_NAMES[333] = ATTR_DRAGGABLE; - ATTRIBUTE_NAMES[334] = ATTR_HANGING; - ATTRIBUTE_NAMES[335] = ATTR_LANGUAGE; - ATTRIBUTE_NAMES[336] = ATTR_LARGEOP; - ATTRIBUTE_NAMES[337] = ATTR_LENGTHADJUST; - ATTRIBUTE_NAMES[338] = ATTR_MARGINWIDTH; - ATTRIBUTE_NAMES[339] = ATTR_ORIGIN; - ATTRIBUTE_NAMES[340] = ATTR_TARGET; - ATTRIBUTE_NAMES[341] = ATTR_TARGETY; - ATTRIBUTE_NAMES[342] = ATTR_ARCHIVE; - ATTRIBUTE_NAMES[343] = ATTR_LIGHTING_COLOR; - ATTRIBUTE_NAMES[344] = ATTR_MATHBACKGROUND; - ATTRIBUTE_NAMES[345] = ATTR_MATHVARIANT; - ATTRIBUTE_NAMES[346] = ATTR_MATHSIZE; - ATTRIBUTE_NAMES[347] = ATTR_ONCHANGE; - ATTRIBUTE_NAMES[348] = ATTR_PATH; - ATTRIBUTE_NAMES[349] = ATTR_ACTIONTYPE; - ATTRIBUTE_NAMES[350] = ATTR_ACTIVE; - ATTRIBUTE_NAMES[351] = ATTR_BEGIN; - ATTRIBUTE_NAMES[352] = ATTR_DIVISOR; - ATTRIBUTE_NAMES[353] = ATTR_HORIZ_ADV_X; - ATTRIBUTE_NAMES[354] = ATTR_HORIZ_ORIGIN_Y; - ATTRIBUTE_NAMES[355] = ATTR_MEDIUMMATHSPACE; - ATTRIBUTE_NAMES[356] = ATTR_MANIFEST; - ATTRIBUTE_NAMES[357] = ATTR_ONFINISH; - ATTRIBUTE_NAMES[358] = ATTR_RADIOGROUP; - ATTRIBUTE_NAMES[359] = ATTR_SCRIPTLEVEL; - ATTRIBUTE_NAMES[360] = ATTR_STRING; - ATTRIBUTE_NAMES[361] = ATTR_STRIKETHROUGH_THICKNESS; - ATTRIBUTE_NAMES[362] = ATTR_TABINDEX; - ATTRIBUTE_NAMES[363] = ATTR_VISIBILITY; - ATTRIBUTE_NAMES[364] = ATTR_LINK; - ATTRIBUTE_NAMES[365] = ATTR_MARKERHEIGHT; - ATTRIBUTE_NAMES[366] = ATTR_MASK; - ATTRIBUTE_NAMES[367] = ATTR_MARKERWIDTH; - ATTRIBUTE_NAMES[368] = ATTR_MARKERUNITS; - ATTRIBUTE_NAMES[369] = ATTR_AMPLITUDE; - ATTRIBUTE_NAMES[370] = ATTR_CELLPADDING; - ATTRIBUTE_NAMES[371] = ATTR_FILL_RULE; - ATTRIBUTE_NAMES[372] = ATTR_FILL_OPACITY; - ATTRIBUTE_NAMES[373] = ATTR_ONCLICK; - ATTRIBUTE_NAMES[374] = ATTR_REPLACE; - ATTRIBUTE_NAMES[375] = ATTR_SCALE; - ATTRIBUTE_NAMES[376] = ATTR_TABLEVALUES; - ATTRIBUTE_NAMES[377] = ATTR_V_ALPHABETIC; - ATTRIBUTE_NAMES[378] = ATTR_FORMAT; - ATTRIBUTE_NAMES[379] = ATTR_FRAME; - ATTRIBUTE_NAMES[380] = ATTR_FROM; - ATTRIBUTE_NAMES[381] = ATTR_PROMPT; - ATTRIBUTE_NAMES[382] = ATTR_SYMMETRIC; - ATTRIBUTE_NAMES[383] = ATTR_STEMV; - ATTRIBUTE_NAMES[384] = ATTR_SUMMARY; - ATTRIBUTE_NAMES[385] = ATTR_ZOOMANDPAN; - ATTRIBUTE_NAMES[386] = ATTR_ALINK; - ATTRIBUTE_NAMES[387] = ATTR_ICON; - ATTRIBUTE_NAMES[388] = ATTR_KERNING; - ATTRIBUTE_NAMES[389] = ATTR_ONUNLOAD; - ATTRIBUTE_NAMES[390] = ATTR_ONINVALID; - ATTRIBUTE_NAMES[391] = ATTR_ONINPUT; - ATTRIBUTE_NAMES[392] = ATTR_POINTS; - ATTRIBUTE_NAMES[393] = ATTR_POINTSATY; - ATTRIBUTE_NAMES[394] = ATTR_SPAN; - ATTRIBUTE_NAMES[395] = ATTR_THINMATHSPACE; - ATTRIBUTE_NAMES[396] = ATTR_VLINK; - ATTRIBUTE_NAMES[397] = ATTR_XLINK_HREF; - ATTRIBUTE_NAMES[398] = ATTR_XLINK_ROLE; - ATTRIBUTE_NAMES[399] = ATTR_XMLNS_XLINK; - ATTRIBUTE_NAMES[400] = ATTR_XLINK_TYPE; - ATTRIBUTE_NAMES[401] = ATTR_XLINK_ACTUATE; - ATTRIBUTE_NAMES[402] = ATTR_AUTOSUBMIT; - ATTRIBUTE_NAMES[403] = ATTR_AUTOFOCUS; - ATTRIBUTE_NAMES[404] = ATTR_COLOR_PROFILE; - ATTRIBUTE_NAMES[405] = ATTR_COLOR_INTERPOLATION; - ATTRIBUTE_NAMES[406] = ATTR_COLOR_INTERPOLATION_FILTERS; - ATTRIBUTE_NAMES[407] = ATTR_EXPONENT; - ATTRIBUTE_NAMES[408] = ATTR_FLOOD_OPACITY; - ATTRIBUTE_NAMES[409] = ATTR_LQUOTE; - ATTRIBUTE_NAMES[410] = ATTR_NUMOCTAVES; + ATTRIBUTE_NAMES[292] = ATTR_CITE; + ATTRIBUTE_NAMES[293] = ATTR_DATETIME; + ATTRIBUTE_NAMES[294] = ATTR_EDGEMODE; + ATTRIBUTE_NAMES[295] = ATTR_FACE; + ATTRIBUTE_NAMES[296] = ATTR_INDEX; + ATTRIBUTE_NAMES[297] = ATTR_INTERCEPT; + ATTRIBUTE_NAMES[298] = ATTR_LINEBREAK; + ATTRIBUTE_NAMES[299] = ATTR_LINETHICKNESS; + ATTRIBUTE_NAMES[300] = ATTR_NAME; + ATTRIBUTE_NAMES[301] = ATTR_ONBEFOREUNLOAD; + ATTRIBUTE_NAMES[302] = ATTR_OBJECT; + ATTRIBUTE_NAMES[303] = ATTR_ORDER; + ATTRIBUTE_NAMES[304] = ATTR_ONRESET; + ATTRIBUTE_NAMES[305] = ATTR_ONREADYSTATECHANGE; + ATTRIBUTE_NAMES[306] = ATTR_ONBEGIN; + ATTRIBUTE_NAMES[307] = ATTR_ONBEFOREPRINT; + ATTRIBUTE_NAMES[308] = ATTR_ORIENTATION; + ATTRIBUTE_NAMES[309] = ATTR_ONSELECTSTART; + ATTRIBUTE_NAMES[310] = ATTR_ONBEFOREUPDATE; + ATTRIBUTE_NAMES[311] = ATTR_ONBEFOREACTIVATE; + ATTRIBUTE_NAMES[312] = ATTR_ONKEYPRESS; + ATTRIBUTE_NAMES[313] = ATTR_ONBEFOREEDITFOCUS; + ATTRIBUTE_NAMES[314] = ATTR_ONKEYDOWN; + ATTRIBUTE_NAMES[315] = ATTR_REPEAT; + ATTRIBUTE_NAMES[316] = ATTR_REFERRERPOLICY; + ATTRIBUTE_NAMES[317] = ATTR_REPEAT_MIN; + ATTRIBUTE_NAMES[318] = ATTR_REPEATCOUNT; + ATTRIBUTE_NAMES[319] = ATTR_REPEAT_TEMPLATE; + ATTRIBUTE_NAMES[320] = ATTR_SELECTED; + ATTRIBUTE_NAMES[321] = ATTR_SIZES; + ATTRIBUTE_NAMES[322] = ATTR_STRETCHY; + ATTRIBUTE_NAMES[323] = ATTR_SPREADMETHOD; + ATTRIBUTE_NAMES[324] = ATTR_SIZE; + ATTRIBUTE_NAMES[325] = ATTR_UNSELECTABLE; + ATTRIBUTE_NAMES[326] = ATTR_UNDERLINE_THICKNESS; + ATTRIBUTE_NAMES[327] = ATTR_DIFFUSECONSTANT; + ATTRIBUTE_NAMES[328] = ATTR_HREFLANG; + ATTRIBUTE_NAMES[329] = ATTR_ONAFTERUPDATE; + ATTRIBUTE_NAMES[330] = ATTR_SURFACESCALE; + ATTRIBUTE_NAMES[331] = ATTR_ALIGN; + ATTRIBUTE_NAMES[332] = ATTR_ALIGNMENTSCOPE; + ATTRIBUTE_NAMES[333] = ATTR_HEIGHT; + ATTRIBUTE_NAMES[334] = ATTR_IMAGE_RENDERING; + ATTRIBUTE_NAMES[335] = ATTR_LANG; + ATTRIBUTE_NAMES[336] = ATTR_LONGDESC; + ATTRIBUTE_NAMES[337] = ATTR_MARGINHEIGHT; + ATTRIBUTE_NAMES[338] = ATTR_NARGS; + ATTRIBUTE_NAMES[339] = ATTR_PING; + ATTRIBUTE_NAMES[340] = ATTR_TARGETX; + ATTRIBUTE_NAMES[341] = ATTR_ALPHABETIC; + ATTRIBUTE_NAMES[342] = ATTR_HIGH; + ATTRIBUTE_NAMES[343] = ATTR_MATHEMATICAL; + ATTRIBUTE_NAMES[344] = ATTR_METHOD; + ATTRIBUTE_NAMES[345] = ATTR_MATHCOLOR; + ATTRIBUTE_NAMES[346] = ATTR_NOSHADE; + ATTRIBUTE_NAMES[347] = ATTR_PATHLENGTH; + ATTRIBUTE_NAMES[348] = ATTR_ALTIMG; + ATTRIBUTE_NAMES[349] = ATTR_ACTION; + ATTRIBUTE_NAMES[350] = ATTR_ADDITIVE; + ATTRIBUTE_NAMES[351] = ATTR_DOMINANT_BASELINE; + ATTRIBUTE_NAMES[352] = ATTR_DEFINITIONURL; + ATTRIBUTE_NAMES[353] = ATTR_HORIZ_ORIGIN_X; + ATTRIBUTE_NAMES[354] = ATTR_LIMITINGCONEANGLE; + ATTRIBUTE_NAMES[355] = ATTR_MEDIA; + ATTRIBUTE_NAMES[356] = ATTR_ONFILTERCHANGE; + ATTRIBUTE_NAMES[357] = ATTR_OPTIMUM; + ATTRIBUTE_NAMES[358] = ATTR_RADIUS; + ATTRIBUTE_NAMES[359] = ATTR_SCRIPTSIZEMULTIPLIER; + ATTRIBUTE_NAMES[360] = ATTR_STRIKETHROUGH_POSITION; + ATTRIBUTE_NAMES[361] = ATTR_SCRIPTMINSIZE; + ATTRIBUTE_NAMES[362] = ATTR_VALIGN; + ATTRIBUTE_NAMES[363] = ATTR_BACKGROUND; + ATTRIBUTE_NAMES[364] = ATTR_MARKER_MID; + ATTRIBUTE_NAMES[365] = ATTR_MARKER_END; + ATTRIBUTE_NAMES[366] = ATTR_MARKER_START; + ATTRIBUTE_NAMES[367] = ATTR_MASKUNITS; + ATTRIBUTE_NAMES[368] = ATTR_MASKCONTENTUNITS; + ATTRIBUTE_NAMES[369] = ATTR_CELLSPACING; + ATTRIBUTE_NAMES[370] = ATTR_DECLARE; + ATTRIBUTE_NAMES[371] = ATTR_FILL; + ATTRIBUTE_NAMES[372] = ATTR_MAXLENGTH; + ATTRIBUTE_NAMES[373] = ATTR_ONBLUR; + ATTRIBUTE_NAMES[374] = ATTR_ROWLINES; + ATTRIBUTE_NAMES[375] = ATTR_STYLE; + ATTRIBUTE_NAMES[376] = ATTR_TITLE; + ATTRIBUTE_NAMES[377] = ATTR_AZIMUTH; + ATTRIBUTE_NAMES[378] = ATTR_FRAMEBORDER; + ATTRIBUTE_NAMES[379] = ATTR_FRAMESPACING; + ATTRIBUTE_NAMES[380] = ATTR_FORM; + ATTRIBUTE_NAMES[381] = ATTR_PRIMITIVEUNITS; + ATTRIBUTE_NAMES[382] = ATTR_STEMH; + ATTRIBUTE_NAMES[383] = ATTR_SEAMLESS; + ATTRIBUTE_NAMES[384] = ATTR_USEMAP; + ATTRIBUTE_NAMES[385] = ATTR_ASYNC; + ATTRIBUTE_NAMES[386] = ATTR_IN; + ATTRIBUTE_NAMES[387] = ATTR_KERNELMATRIX; + ATTRIBUTE_NAMES[388] = ATTR_KERNELUNITLENGTH; + ATTRIBUTE_NAMES[389] = ATTR_OPEN; + ATTRIBUTE_NAMES[390] = ATTR_ONEND; + ATTRIBUTE_NAMES[391] = ATTR_POINTER_EVENTS; + ATTRIBUTE_NAMES[392] = ATTR_POINTSATX; + ATTRIBUTE_NAMES[393] = ATTR_POINTSATZ; + ATTRIBUTE_NAMES[394] = ATTR_STANDBY; + ATTRIBUTE_NAMES[395] = ATTR_TRANSFORM; + ATTRIBUTE_NAMES[396] = ATTR_WHEN; + ATTRIBUTE_NAMES[397] = ATTR_XLINK_TITLE; + ATTRIBUTE_NAMES[398] = ATTR_XLINK_ARCROLE; + ATTRIBUTE_NAMES[399] = ATTR_XMLNS; + ATTRIBUTE_NAMES[400] = ATTR_XLINK_SHOW; + ATTRIBUTE_NAMES[401] = ATTR_AUTOPLAY; + ATTRIBUTE_NAMES[402] = ATTR_AUTOCOMPLETE; + ATTRIBUTE_NAMES[403] = ATTR_BGCOLOR; + ATTRIBUTE_NAMES[404] = ATTR_COLOR_RENDERING; + ATTRIBUTE_NAMES[405] = ATTR_COLOR; + ATTRIBUTE_NAMES[406] = ATTR_ENCODING; + ATTRIBUTE_NAMES[407] = ATTR_FLOOD_COLOR; + ATTRIBUTE_NAMES[408] = ATTR_IDEOGRAPHIC; + ATTRIBUTE_NAMES[409] = ATTR_PANOSE_1; + ATTRIBUTE_NAMES[410] = ATTR_NOMODULE; ATTRIBUTE_NAMES[411] = ATTR_ONBOUNCE; ATTRIBUTE_NAMES[412] = ATTR_ONROWSINSERTED; ATTRIBUTE_NAMES[413] = ATTR_ONROWENTER; @@ -1953,6 +1955,7 @@ nsHtml5AttributeName::initializeStatics() ATTRIBUTE_NAMES[581] = ATTR_BASEFREQUENCY; ATTRIBUTE_NAMES[582] = ATTR_BASEPROFILE; ATTRIBUTE_NAMES[583] = ATTR_BASE; + ATTRIBUTE_NAMES[584] = ATTR_CODETYPE; } void @@ -2350,6 +2353,7 @@ nsHtml5AttributeName::releaseStatics() delete ATTR_LQUOTE; delete ATTR_PANOSE_1; delete ATTR_NUMOCTAVES; + delete ATTR_NOMODULE; delete ATTR_ONLOAD; delete ATTR_ONBOUNCE; delete ATTR_ONCONTROLSELECT; diff --git a/parser/html/nsHtml5AttributeName.h b/parser/html/nsHtml5AttributeName.h index d44ea6667..8bb706408 100644 --- a/parser/html/nsHtml5AttributeName.h +++ b/parser/html/nsHtml5AttributeName.h @@ -563,6 +563,7 @@ class nsHtml5AttributeName static nsHtml5AttributeName* ATTR_LQUOTE; static nsHtml5AttributeName* ATTR_PANOSE_1; static nsHtml5AttributeName* ATTR_NUMOCTAVES; + static nsHtml5AttributeName* ATTR_NOMODULE; static nsHtml5AttributeName* ATTR_ONLOAD; static nsHtml5AttributeName* ATTR_ONBOUNCE; static nsHtml5AttributeName* ATTR_ONCONTROLSELECT; diff --git a/parser/html/nsHtml5SpeculativeLoad.cpp b/parser/html/nsHtml5SpeculativeLoad.cpp index 7bae0699f..35c11b739 100644 --- a/parser/html/nsHtml5SpeculativeLoad.cpp +++ b/parser/html/nsHtml5SpeculativeLoad.cpp @@ -52,17 +52,27 @@ nsHtml5SpeculativeLoad::Perform(nsHtml5TreeOpExecutor* aExecutor) case eSpeculativeLoadScript: aExecutor->PreloadScript(mUrl, mCharset, mTypeOrCharsetSourceOrDocumentMode, mCrossOrigin, mIntegrity, false, - mIsAsync, mIsDefer); + mIsAsync, mIsDefer, false); break; case eSpeculativeLoadScriptFromHead: aExecutor->PreloadScript(mUrl, mCharset, mTypeOrCharsetSourceOrDocumentMode, mCrossOrigin, mIntegrity, true, - mIsAsync, mIsDefer); + mIsAsync, mIsDefer, false); + break; + case eSpeculativeLoadNoModuleScript: + aExecutor->PreloadScript(mUrl, mCharset, mTypeOrCharsetSourceOrDocumentMode, + mCrossOrigin, mIntegrity, false, + mIsAsync, mIsDefer, true); + break; + case eSpeculativeLoadNoModuleScriptFromHead: + aExecutor->PreloadScript(mUrl, mCharset, mTypeOrCharsetSourceOrDocumentMode, + mCrossOrigin, mIntegrity, true, + mIsAsync, mIsDefer, true); break; case eSpeculativeLoadStyle: aExecutor->PreloadStyle(mUrl, mCharset, mCrossOrigin, mIntegrity); break; - case eSpeculativeLoadManifest: + case eSpeculativeLoadManifest: aExecutor->ProcessOfflineManifest(mUrl); break; case eSpeculativeLoadSetDocumentCharset: { diff --git a/parser/html/nsHtml5SpeculativeLoad.h b/parser/html/nsHtml5SpeculativeLoad.h index fcc84de4f..1f4a61741 100644 --- a/parser/html/nsHtml5SpeculativeLoad.h +++ b/parser/html/nsHtml5SpeculativeLoad.h @@ -10,7 +10,8 @@ class nsHtml5TreeOpExecutor; -enum eHtml5SpeculativeLoad { +enum eHtml5SpeculativeLoad +{ #ifdef DEBUG eSpeculativeLoadUninitialized, #endif @@ -23,6 +24,8 @@ enum eHtml5SpeculativeLoad { eSpeculativeLoadPictureSource, eSpeculativeLoadScript, eSpeculativeLoadScriptFromHead, + eSpeculativeLoadNoModuleScript, + eSpeculativeLoadNoModuleScriptFromHead, eSpeculativeLoadStyle, eSpeculativeLoadManifest, eSpeculativeLoadSetDocumentCharset, @@ -130,12 +133,18 @@ class nsHtml5SpeculativeLoad { nsHtml5String aIntegrity, bool aParserInHead, bool aAsync, - bool aDefer) + bool aDefer, + bool aNoModule) { NS_PRECONDITION(mOpCode == eSpeculativeLoadUninitialized, "Trying to reinitialize a speculative load!"); - mOpCode = aParserInHead ? - eSpeculativeLoadScriptFromHead : eSpeculativeLoadScript; + if (aNoModule) { + mOpCode = aParserInHead ? eSpeculativeLoadNoModuleScriptFromHead + : eSpeculativeLoadNoModuleScript; + } else { + mOpCode = aParserInHead ? eSpeculativeLoadScriptFromHead + : eSpeculativeLoadScript; + } aUrl.ToString(mUrl); aCharset.ToString(mCharset); aType.ToString(mTypeOrCharsetSourceOrDocumentMode); diff --git a/parser/html/nsHtml5TreeBuilderCppSupplement.h b/parser/html/nsHtml5TreeBuilderCppSupplement.h index 2ad87f795..d04293603 100644 --- a/parser/html/nsHtml5TreeBuilderCppSupplement.h +++ b/parser/html/nsHtml5TreeBuilderCppSupplement.h @@ -189,6 +189,8 @@ nsHtml5TreeBuilder::createElement(int32_t aNamespace, aAttributes->contains(nsHtml5AttributeName::ATTR_ASYNC); bool defer = aAttributes->contains(nsHtml5AttributeName::ATTR_DEFER); + bool noModule = + aAttributes->contains(nsHtml5AttributeName::ATTR_NOMODULE); mSpeculativeLoadQueue.AppendElement()->InitScript( url, charset, @@ -197,7 +199,8 @@ nsHtml5TreeBuilder::createElement(int32_t aNamespace, integrity, mode == nsHtml5TreeBuilder::IN_HEAD, async, - defer); + defer, + noModule); mCurrentHtmlScriptIsAsyncOrDefer = async || defer; } } else if (nsHtml5Atoms::link == aName) { @@ -303,7 +306,8 @@ nsHtml5TreeBuilder::createElement(int32_t aNamespace, integrity, mode == nsHtml5TreeBuilder::IN_HEAD, false /* async */, - false /* defer */); + false /* defer */, + false /* noModule */); } } else if (nsHtml5Atoms::style == aName) { nsHtml5TreeOperation* treeOp = mOpQueue.AppendElement(); diff --git a/parser/html/nsHtml5TreeOpExecutor.cpp b/parser/html/nsHtml5TreeOpExecutor.cpp index 9be7f3b0d..cd5c68913 100644 --- a/parser/html/nsHtml5TreeOpExecutor.cpp +++ b/parser/html/nsHtml5TreeOpExecutor.cpp @@ -923,14 +923,16 @@ nsHtml5TreeOpExecutor::PreloadScript(const nsAString& aURL, const nsAString& aIntegrity, bool aScriptFromHead, bool aAsync, - bool aDefer) + bool aDefer, + bool aNoModule) { nsCOMPtr uri = ConvertIfNotPreloadedYet(aURL); if (!uri) { return; } mDocument->ScriptLoader()->PreloadURI(uri, aCharset, aType, aCrossOrigin, - aIntegrity, aScriptFromHead, aAsync, aDefer, + aIntegrity, aScriptFromHead, aAsync, + aDefer, aNoModule, mSpeculationReferrerPolicy); } diff --git a/parser/html/nsHtml5TreeOpExecutor.h b/parser/html/nsHtml5TreeOpExecutor.h index 64a5daa96..878f359c5 100644 --- a/parser/html/nsHtml5TreeOpExecutor.h +++ b/parser/html/nsHtml5TreeOpExecutor.h @@ -251,7 +251,8 @@ class nsHtml5TreeOpExecutor final : public nsHtml5DocumentBuilder, const nsAString& aIntegrity, bool aScriptFromHead, bool aAsync, - bool aDefer); + bool aDefer, + bool aNoModule); void PreloadStyle(const nsAString& aURL, const nsAString& aCharset, const nsAString& aCrossOrigin, diff --git a/xpcom/glue/nsBaseHashtable.h b/xpcom/glue/nsBaseHashtable.h index f52df3dd1..f074037f3 100644 --- a/xpcom/glue/nsBaseHashtable.h +++ b/xpcom/glue/nsBaseHashtable.h @@ -59,6 +59,7 @@ public: typedef nsBaseHashtableET EntryType; using nsTHashtable::Contains; + using nsTHashtable::IsEmpty; nsBaseHashtable() {} explicit nsBaseHashtable(uint32_t aInitLength)