Bug 1266495 - Remove <isindex>. r=wchen

MozReview-Commit-ID: KM0sTMM1GaD

--HG--
extra : rebase_source : 013069be4191e2ad50b5af879b690a6760e8429a
This commit is contained in:
Henri Sivonen 2017-07-05 11:42:04 +03:00
Родитель 291faedb49
Коммит 217ac88f04
25 изменённых файлов: 327 добавлений и 685 удалений

Просмотреть файл

@ -2645,8 +2645,6 @@ GK_ATOM(refx, "refx")
// ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN):
GK_ATOM(refy, "refy")
// ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN):
GK_ATOM(isindex, "isindex")
// ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN):
GK_ATOM(fefunca, "fefunca")
// ATOM GENERATED BY HTML PARSER TRANSLATOR (WILL BE AUTOMATICALLY OVERWRITTEN):
GK_ATOM(fefuncb, "fefuncb")

Просмотреть файл

@ -116,13 +116,6 @@ public:
virtual nsresult
GetEncodedSubmission(nsIURI* aURI, nsIInputStream** aPostDataStream) override;
virtual bool SupportsIsindexSubmission() override
{
return true;
}
virtual nsresult AddIsindex(const nsAString& aValue) override;
protected:
/**
@ -178,25 +171,6 @@ FSURLEncoded::AddNameValuePair(const nsAString& aName,
return NS_OK;
}
nsresult
FSURLEncoded::AddIsindex(const nsAString& aValue)
{
// Encode value
nsCString convValue;
nsresult rv = URLEncode(aValue, convValue);
NS_ENSURE_SUCCESS(rv, rv);
// Append data to string
if (mQueryString.IsEmpty()) {
Telemetry::Accumulate(Telemetry::FORM_ISINDEX_USED, true);
mQueryString.Assign(convValue);
} else {
mQueryString += NS_LITERAL_CSTRING("&isindex=") + convValue;
}
return NS_OK;
}
nsresult
FSURLEncoded::AddNameBlobOrNullPair(const nsAString& aName,
Blob* aBlob)

Просмотреть файл

@ -78,27 +78,6 @@ public:
virtual nsresult AddNameDirectoryPair(const nsAString& aName,
Directory* aDirectory) = 0;
/**
* Reports whether the instance supports AddIsindex().
*
* @return true if supported.
*/
virtual bool SupportsIsindexSubmission()
{
return false;
}
/**
* Adds an isindex value to the submission.
*
* @param aValue the field value
*/
virtual nsresult AddIsindex(const nsAString& aValue)
{
NS_NOTREACHED("AddIsindex called when not supported");
return NS_ERROR_UNEXPECTED;
}
/**
* Given a URI and the current submission, create the final URI and data
* stream that will be submitted. Subclasses *must* implement this.

Просмотреть файл

@ -6462,11 +6462,6 @@ HTMLInputElement::SubmitNamesValues(HTMLFormSubmission* aFormSubmission)
value = defaultValue;
}
if (IsSingleLineTextControl(true) &&
name.EqualsLiteral("isindex") &&
aFormSubmission->SupportsIsindexSubmission()) {
return aFormSubmission->AddIsindex(value);
}
return aFormSubmission->AddNameValuePair(name, value);
}

Просмотреть файл

@ -8,11 +8,6 @@ Browse=Browse…
FileUpload=File Upload
DirectoryUpload=Select Folder to Upload
DirectoryPickerOkButtonLabel=Upload
# LOCALIZATION NOTE (IsIndexPromptWithSpace): The last character of the string
# should be a space (U+0020) in most locales. The prompt is followed by an
# input field. The space needs be escaped in the property file to avoid
# trimming.
IsIndexPromptWithSpace=This is a searchable index. Enter search keywords:\u0020
ForgotPostWarning=Form contains enctype=%S, but does not contain method=post. Submitting normally with method=GET and no enctype instead.
ForgotFileEnctypeWarning=Form contains a file input, but is missing method=POST and enctype=multipart/form-data on the form. The file will not be sent.
# LOCALIZATION NOTE (DefaultFormSubject): %S will be replaced with brandShortName
@ -34,8 +29,8 @@ NoDirSelected=No directory selected.
# %S will be a number greater or equal to 2.
XFilesSelected=%S files selected.
ColorPicker=Choose a color
# LOCALIZATION NOTE (AndNMoreFiles): Semi-colon list of plural forms.
# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
# LOCALIZATION NOTE (AndNMoreFiles): Semi-colon list of plural forms.
# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
# This string is shown at the end of the tooltip text for <input type='file'
# multiple> when there are more than 21 files selected (when we will only list
# the first 20, plus an "and X more" line). #1 represents the number of files

Просмотреть файл

@ -16,7 +16,7 @@ EncBomlessUtf16=Detected UTF-16-encoded Basic Latin-only text without a byte ord
EncMetaUtf16=A meta tag was used to declare the character encoding as UTF-16. This was interpreted as an UTF-8 declaration instead.
EncMetaUserDefined=A meta tag was used to declare the character encoding as x-user-defined. This was interpreted as a windows-1252 declaration instead for compatibility with intentionally mis-encoded legacy fonts. This site should migrate to Unicode.
# The bulk of the messages below are derived from
# The bulk of the messages below are derived from
# https://hg.mozilla.org/projects/htmlparser/file/1f633cef7de7/src/nu/validator/htmlparser/impl/ErrorReportingTokenizer.java
# which is available under the MIT license.
@ -104,7 +104,6 @@ errStartSelectWhereEndSelectExpected=“select” start tag where end tag expect
errStartTagWithSelectOpen=“%1$S” start tag with “select” open.
errBadStartTagInHead2=Bad start tag “%1$S” in “head”.
errImage=Saw a start tag “image”.
errIsindex=“isindex” seen.
errFooSeenWhenFooOpen=An “%1$S” start tag seen but an element of the same type was already open.
errHeadingWhenHeadingOpen=Heading cannot be a child of another heading.
errFramesetStart=“frameset” start tag seen.
@ -129,4 +128,4 @@ errSelfClosing=Self-closing syntax (“/>”) used on a non-void HTML element. I
errNoCheckUnclosedElementsOnStack=Unclosed elements on stack.
errEndTagDidNotMatchCurrentOpenElement=End tag “%1$S” did not match the name of the current open element (“%2$S”).
errEndTagViolatesNestingRules=End tag “%1$S” violates nesting rules.
errEndWithUnclosedElements=End tag for “%1$S” seen, but there were unclosed elements.
errEndWithUnclosedElements=End tag for “%1$S” seen, but there were unclosed elements.

Просмотреть файл

@ -22,11 +22,6 @@
package nu.validator.htmlparser.impl;
import java.util.Arrays;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import nu.validator.htmlparser.annotation.Inline;
import nu.validator.htmlparser.annotation.Local;
import nu.validator.htmlparser.annotation.NoLength;
@ -218,11 +213,6 @@ public final class ElementName
public static final ElementName ANNOTATION_XML = new ElementName("annotation-xml", "annotation-xml", TreeBuilder.ANNOTATION_XML | SCOPING_AS_MATHML);
// CPPONLY: public static final ElementName ISINDEX = new ElementName("isindex", "isindex", TreeBuilder.ISINDEX | SPECIAL);
// [NOCPP[
public static final ElementName ISINDEX = new ElementName("isindex", "isindex", TreeBuilder.OTHER);
// ]NOCPP]
// START CODE ONLY USED FOR GENERATING CODE uncomment and run to regenerate
// /**
@ -474,9 +464,6 @@ public final class ElementName
// }
// for (int i = 0; i < ELEMENT_NAMES.length; i++) {
// ElementName el = ELEMENT_NAMES[i];
// if ("isindex".equals(el.name)) {
// continue;
// }
// System.out.println("public static final ElementName "
// + el.constName() + " = new ElementName" + el.toString()
// + ";");
@ -709,19 +696,19 @@ public final class ElementName
private final static @NoLength ElementName[] ELEMENT_NAMES = {
KEYGEN,
FETURBULENCE,
FRAMESET,
FIELDSET,
H2,
MATH,
MARKER,
RADIALGRADIENT,
HEADER,
RECT,
RTC,
FEBLEND,
STYLE,
LABEL,
SAMP,
MS,
MTEXT,
FECOLORMATRIX,
DETAILS,
LINEARGRADIENT,
VIEW,
IMG,
WBR,
META,
@ -732,11 +719,11 @@ public final class ElementName
FORM,
AUDIO,
FECOMPONENTTRANSFER,
ADDRESS,
APPLET,
FEDISTANTLIGHT,
OUTPUT,
TEXT,
TR,
DT,
FEPOINTLIGHT,
OBJECT,
TFOOT,
FEMORPHOLOGY,
DEL,
NAV,
@ -757,18 +744,18 @@ public final class ElementName
PATTERN,
FEDISPLACEMENTMAP,
ANIMATECOLOR,
FEGAUSSIANBLUR,
NOBR,
DEFS,
PROGRESS,
FOREIGNOBJECT,
FESPOTLIGHT,
INPUT,
RT,
TT,
SCRIPT,
FEDROPSHADOW,
ISINDEX,
FOOTER,
METER,
CANVAS,
NOFRAMES,
BASEFONT,
FEOFFSET,
FONT,
NOSCRIPT,
PLAINTEXT,
SELECT,
MENU,
FECONVOLVEMATRIX,
SUMMARY,
BDO,
DIR,
@ -808,29 +795,29 @@ public final class ElementName
RP,
BR,
HR,
FOOTER,
HEADER,
METER,
TR,
CANVAS,
DETAILS,
NOFRAMES,
DT,
BASEFONT,
FIELDSET,
FEOFFSET,
FEPOINTLIGHT,
FONT,
LINEARGRADIENT,
NOSCRIPT,
OBJECT,
PLAINTEXT,
RECT,
SELECT,
TFOOT,
MENU,
VIEW,
FECONVOLVEMATRIX,
FILTER,
FEGAUSSIANBLUR,
MARKER,
NOBR,
ADDRESS,
DEFS,
MS,
PROGRESS,
APPLET,
FOREIGNOBJECT,
FRAMESET,
FESPOTLIGHT,
FEDISTANTLIGHT,
INPUT,
MTEXT,
RT,
OUTPUT,
TT,
RADIALGRADIENT,
SCRIPT,
TEXT,
FEDROPSHADOW,
FECOLORMATRIX,
BODY,
RUBY,
TBODY,
@ -910,24 +897,23 @@ public final class ElementName
ABBR,
CENTER,
FEFUNCR,
FILTER,
};
private final static int[] ELEMENT_HASHES = {
1903302038,
1749656156,
2001349720,
2001349704,
893386754,
1803929812,
1971461414,
2007781534,
1968836118,
2007601444,
59821379,
1733054663,
1756625221,
1870268949,
1941178676,
1986527234,
2005324101,
2068523853,
1983633431,
2004635806,
2060065124,
55104723,
62450211,
1686491348,
@ -938,11 +924,11 @@ public final class ElementName
1884120164,
1914900309,
1967788867,
1982173479,
1998724870,
2001392798,
2006329158,
2008994116,
1973420034,
1998585858,
2001392796,
2006028454,
2008851557,
2085266636,
52485715,
57733651,
@ -963,18 +949,18 @@ public final class ElementName
1906135367,
1934172497,
1965334268,
1968053806,
1971938532,
1983533124,
1990037800,
2001309869,
2001392795,
2003183333,
2005925890,
2006974466,
2008340774,
2051837468,
2070023911,
1967795958,
1971465813,
1982935782,
1988763672,
1999397992,
2001349736,
2001495140,
2005719336,
2006896969,
2008125638,
2021937364,
2068523856,
2092255447,
51438659,
52488851,
@ -1014,29 +1000,29 @@ public final class ElementName
1938817026,
1963982850,
1967128578,
1967795958,
1968836118,
1971465813,
1973420034,
1982935782,
1983633431,
1988763672,
1998585858,
1999397992,
2001349704,
2001349736,
2001392796,
2001495140,
2004635806,
2005719336,
2006028454,
2006896969,
2007601444,
2008125638,
2008851557,
2021937364,
2060065124,
2068523856,
1967795910,
1968053806,
1971461414,
1971938532,
1982173479,
1983533124,
1986527234,
1990037800,
1998724870,
2001309869,
2001349720,
2001392795,
2001392798,
2003183333,
2005324101,
2005925890,
2006329158,
2006974466,
2007781534,
2008340774,
2008994116,
2051837468,
2068523853,
2083120164,
2091479332,
2092557349,
@ -1116,6 +1102,5 @@ public final class ElementName
1965115924,
1966223078,
1967760215,
1967795910,
};
}

Просмотреть файл

@ -1,22 +1,22 @@
/*
* Copyright (c) 2008-2015 Mozilla Foundation
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
@ -32,7 +32,7 @@ public final class Portability {
// Allocating methods
/**
* Allocates a new local name object. In C++, the refcount must be set up in such a way that
* Allocates a new local name object. In C++, the refcount must be set up in such a way that
* calling <code>releaseLocal</code> on the return value balances the refcount set by this method.
*/
public static @Local String newLocalNameFromBuffer(@NoLength char[] buf, int offset, int length, Interner interner) {
@ -52,11 +52,11 @@ public final class Portability {
public static String newStringFromLiteral(@Literal String literal) {
return literal;
}
public static String newStringFromString(String string) {
return string;
}
// XXX get rid of this
public static char[] newCharArrayFromLocal(@Local String local) {
return local.toCharArray();
@ -65,19 +65,19 @@ public final class Portability {
public static char[] newCharArrayFromString(String string) {
return string.toCharArray();
}
public static @Local String newLocalFromLocal(@Local String local, Interner interner) {
return local;
}
// Deallocation methods
public static void releaseString(String str) {
// No-op in Java
}
// Comparison methods
public static boolean localEqualsBuffer(@Local String local, @NoLength char[] buf, int offset, int length) {
if (local.length() != length) {
return false;
@ -110,7 +110,7 @@ public final class Portability {
}
return true;
}
public static boolean lowerCaseLiteralEqualsIgnoreAsciiCaseString(@Literal String lowerCaseLiteral,
String string) {
if (string == null) {
@ -131,7 +131,7 @@ public final class Portability {
}
return true;
}
public static boolean literalEqualsString(@Literal String literal, String string) {
return literal.equals(string);
}
@ -139,12 +139,12 @@ public final class Portability {
public static boolean stringEqualsString(String one, String other) {
return one.equals(other);
}
public static void delete(Object o) {
}
public static void deleteArray(Object o) {
}
}

Просмотреть файл

@ -97,7 +97,7 @@ public abstract class TreeBuilder<T> implements TokenHandler,
final static int INPUT = 13;
final static int ISINDEX = 14;
final static int RT_OR_RP = 14;
final static int LI = 15;
@ -203,8 +203,6 @@ public abstract class TreeBuilder<T> implements TokenHandler,
final static int IMG = 68;
final static int RT_OR_RP = 69;
// start insertion modes
private static final int IN_ROW = 0;
@ -2352,74 +2350,6 @@ public abstract class TreeBuilder<T> implements TokenHandler,
selfClosing = false;
attributes = null; // CPP
break starttagloop;
// CPPONLY:case ISINDEX:
// CPPONLY: errIsindex();
// CPPONLY: if (formPointer != null && !isTemplateContents()) {
// CPPONLY: break starttagloop;
// CPPONLY: }
// CPPONLY: implicitlyCloseP();
// CPPONLY: HtmlAttributes formAttrs = new HtmlAttributes(0);
// CPPONLY: int actionIndex = attributes.getIndex(AttributeName.ACTION);
// CPPONLY: if (actionIndex > -1) {
// CPPONLY: formAttrs.addAttribute(
// CPPONLY: AttributeName.ACTION,
// CPPONLY: attributes.getValueNoBoundsCheck(actionIndex),
// CPPONLY: attributes.getLineNoBoundsCheck(actionIndex)
// CPPONLY: );
// CPPONLY: }
// CPPONLY: appendToCurrentNodeAndPushFormElementMayFoster(formAttrs);
// CPPONLY: appendVoidElementToCurrentMayFoster(
// CPPONLY: ElementName.HR,
// CPPONLY: HtmlAttributes.EMPTY_ATTRIBUTES);
// CPPONLY: appendToCurrentNodeAndPushElementMayFoster(
// CPPONLY: ElementName.LABEL,
// CPPONLY: HtmlAttributes.EMPTY_ATTRIBUTES);
// CPPONLY: int promptIndex = attributes.getIndex(AttributeName.PROMPT);
// CPPONLY: if (promptIndex > -1) {
// CPPONLY: @Auto char[] prompt = Portability.newCharArrayFromString(attributes.getValueNoBoundsCheck(promptIndex));
// CPPONLY: appendCharacters(stack[currentPtr].node,
// CPPONLY: prompt, 0, prompt.length);
// CPPONLY: } else {
// CPPONLY: appendIsindexPrompt(stack[currentPtr].node);
// CPPONLY: }
// CPPONLY: HtmlAttributes inputAttributes = new HtmlAttributes(
// CPPONLY: 0);
// CPPONLY: inputAttributes.addAttribute(
// CPPONLY: AttributeName.NAME,
// CPPONLY: Portability.newStringFromLiteral("isindex"),
// CPPONLY: tokenizer.getLineNumber()
// CPPONLY: );
// CPPONLY: for (int i = 0; i < attributes.getLength(); i++) {
// CPPONLY: @Local String attributeQName = attributes.getLocalNameNoBoundsCheck(i);
// CPPONLY: if ("name" == attributeQName
// CPPONLY: || "prompt" == attributeQName) {
// CPPONLY: attributes.releaseValue(i);
// CPPONLY: } else if ("action" != attributeQName) {
// CPPONLY: inputAttributes.AddAttributeWithLocal(
// CPPONLY: attributeQName,
// CPPONLY: attributes.getValueNoBoundsCheck(i),
// CPPONLY: attributes.getLineNoBoundsCheck(i)
// CPPONLY: );
// CPPONLY: }
// CPPONLY: }
// CPPONLY: attributes.clearWithoutReleasingContents();
// CPPONLY: appendVoidElementToCurrentMayFoster(
// CPPONLY: "input",
// CPPONLY: inputAttributes, formPointer);
// CPPONLY: pop(); // label
// CPPONLY: appendVoidElementToCurrentMayFoster(
// CPPONLY: ElementName.HR,
// CPPONLY: HtmlAttributes.EMPTY_ATTRIBUTES);
// CPPONLY: pop(); // form
// CPPONLY:
// CPPONLY: if (!isTemplateContents()) {
// CPPONLY: formPointer = null;
// CPPONLY: }
// CPPONLY:
// CPPONLY: selfClosing = false;
// CPPONLY: // Don't delete attributes, they are deleted
// CPPONLY: // later
// CPPONLY: break starttagloop;
case TEXTAREA:
appendToCurrentNodeAndPushElementMayFoster(
elementName,
@ -3852,7 +3782,6 @@ public abstract class TreeBuilder<T> implements TokenHandler,
case INPUT:
case KEYGEN: // XXX??
case HR:
// CPPONLY: case ISINDEX:
case IFRAME:
case NOEMBED: // XXX???
case NOFRAMES: // XXX??
@ -5817,8 +5746,6 @@ public abstract class TreeBuilder<T> implements TokenHandler,
protected abstract void appendCharacters(T parent, @NoLength char[] buf,
int start, int length) throws SAXException;
// CPPONLY: protected abstract void appendIsindexPrompt(T parent) throws SAXException;
protected abstract void appendComment(T parent, @NoLength char[] buf,
int start, int length) throws SAXException;
@ -6515,10 +6442,6 @@ public abstract class TreeBuilder<T> implements TokenHandler,
err("Saw a start tag \u201Cimage\u201D.");
}
// CPPONLY: private void errIsindex() throws SAXException {
// CPPONLY: err("\u201Cisindex\u201D seen.");
// CPPONLY: }
private void errFooSeenWhenFooOpen(@Local String name) throws SAXException {
if (errorHandler == null) {
return;

Просмотреть файл

@ -77,7 +77,6 @@ nsHtml5ElementName::~nsHtml5ElementName()
}
nsHtml5ElementName* nsHtml5ElementName::ELT_ANNOTATION_XML = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_ISINDEX = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_BIG = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_BDO = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_COL = nullptr;
@ -283,27 +282,27 @@ nsHtml5ElementName* nsHtml5ElementName::ELT_SUMMARY = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_TBODY = nullptr;
nsHtml5ElementName** nsHtml5ElementName::ELEMENT_NAMES = 0;
static int32_t const ELEMENT_HASHES_DATA[] = {
1903302038, 1749656156, 2001349720, 893386754, 1803929812, 1971461414,
2007781534, 59821379, 1733054663, 1756625221, 1870268949, 1941178676,
1986527234, 2005324101, 2068523853, 55104723, 62450211, 1686491348,
1903302038, 1749656156, 2001349704, 893386754, 1803929812, 1968836118,
2007601444, 59821379, 1733054663, 1756625221, 1870268949, 1941178676,
1983633431, 2004635806, 2060065124, 55104723, 62450211, 1686491348,
1747176599, 1751288021, 1783210839, 1853642948, 1884120164, 1914900309,
1967788867, 1982173479, 1998724870, 2001392798, 2006329158, 2008994116,
1967788867, 1973420034, 1998585858, 2001392796, 2006028454, 2008851557,
2085266636, 52485715, 57733651, 60354131, 67633153, 960495618,
1715310660, 1737099991, 1748100148, 1749801286, 1755076808, 1757268168,
1790207270, 1806806678, 1857653029, 1881288348, 1898753862, 1906135367,
1934172497, 1965334268, 1968053806, 1971938532, 1983533124, 1990037800,
2001309869, 2001392795, 2003183333, 2005925890, 2006974466, 2008340774,
2051837468, 2070023911, 2092255447, 51438659, 52488851, 56151587,
1934172497, 1965334268, 1967795958, 1971465813, 1982935782, 1988763672,
1999397992, 2001349736, 2001495140, 2005719336, 2006896969, 2008125638,
2021937364, 2068523856, 2092255447, 51438659, 52488851, 56151587,
59244545, 60347747, 61925907, 63438849, 69730305, 926941186,
1682547543, 1699324759, 1730965751, 1733890180, 1740181637, 1747814436,
1748359220, 1749715159, 1749905526, 1752979652, 1756474198, 1757146773,
1766992520, 1783388498, 1798686984, 1805502724, 1818230786, 1854228698,
1868312196, 1874053333, 1881613047, 1889085973, 1900845386, 1905563974,
1907661127, 1925844629, 1938817026, 1963982850, 1967128578, 1967795958,
1968836118, 1971465813, 1973420034, 1982935782, 1983633431, 1988763672,
1998585858, 1999397992, 2001349704, 2001349736, 2001392796, 2001495140,
2004635806, 2005719336, 2006028454, 2006896969, 2007601444, 2008125638,
2008851557, 2021937364, 2060065124, 2068523856, 2083120164, 2091479332,
1907661127, 1925844629, 1938817026, 1963982850, 1967128578, 1967795910,
1968053806, 1971461414, 1971938532, 1982173479, 1983533124, 1986527234,
1990037800, 1998724870, 2001309869, 2001349720, 2001392795, 2001392798,
2003183333, 2005324101, 2005925890, 2006329158, 2006974466, 2007781534,
2008340774, 2008994116, 2051837468, 2068523853, 2083120164, 2091479332,
2092557349, 51434643, 51961587, 52486755, 52490899, 55110883,
57206291, 58773795, 59768833, 60345171, 60352339, 61395251,
62390273, 62973651, 67108865, 68681729, 876609538, 910163970,
@ -316,7 +315,7 @@ static int32_t const ELEMENT_HASHES_DATA[] = {
1854245076, 1864368130, 1870135298, 1873281026, 1874102998, 1881498736,
1881669634, 1887579800, 1898223949, 1899272519, 1902641154, 1904412884,
1906087319, 1907435316, 1907959605, 1919418370, 1932928296, 1935549734,
1939219752, 1941221172, 1965115924, 1966223078, 1967760215, 1967795910
1939219752, 1941221172, 1965115924, 1966223078, 1967760215
};
staticJArray<int32_t,int32_t> nsHtml5ElementName::ELEMENT_HASHES = { ELEMENT_HASHES_DATA, MOZ_ARRAY_LENGTH(ELEMENT_HASHES_DATA) };
void
@ -326,9 +325,6 @@ nsHtml5ElementName::initializeStatics()
nsGkAtoms::annotation_xml_,
nsGkAtoms::annotation_xml_,
nsHtml5TreeBuilder::ANNOTATION_XML | SCOPING_AS_MATHML);
ELT_ISINDEX = new nsHtml5ElementName(nsGkAtoms::isindex,
nsGkAtoms::isindex,
nsHtml5TreeBuilder::ISINDEX | SPECIAL);
ELT_BIG = new nsHtml5ElementName(
nsGkAtoms::big,
nsGkAtoms::big,
@ -976,22 +972,22 @@ nsHtml5ElementName::initializeStatics()
nsGkAtoms::tbody,
nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT |
SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
ELEMENT_NAMES = new nsHtml5ElementName*[204];
ELEMENT_NAMES = new nsHtml5ElementName*[203];
ELEMENT_NAMES[0] = ELT_KEYGEN;
ELEMENT_NAMES[1] = ELT_FETURBULENCE;
ELEMENT_NAMES[2] = ELT_FRAMESET;
ELEMENT_NAMES[2] = ELT_FIELDSET;
ELEMENT_NAMES[3] = ELT_H2;
ELEMENT_NAMES[4] = ELT_MATH;
ELEMENT_NAMES[5] = ELT_MARKER;
ELEMENT_NAMES[6] = ELT_RADIALGRADIENT;
ELEMENT_NAMES[5] = ELT_HEADER;
ELEMENT_NAMES[6] = ELT_RECT;
ELEMENT_NAMES[7] = ELT_RTC;
ELEMENT_NAMES[8] = ELT_FEBLEND;
ELEMENT_NAMES[9] = ELT_STYLE;
ELEMENT_NAMES[10] = ELT_LABEL;
ELEMENT_NAMES[11] = ELT_SAMP;
ELEMENT_NAMES[12] = ELT_MS;
ELEMENT_NAMES[13] = ELT_MTEXT;
ELEMENT_NAMES[14] = ELT_FECOLORMATRIX;
ELEMENT_NAMES[12] = ELT_DETAILS;
ELEMENT_NAMES[13] = ELT_LINEARGRADIENT;
ELEMENT_NAMES[14] = ELT_VIEW;
ELEMENT_NAMES[15] = ELT_IMG;
ELEMENT_NAMES[16] = ELT_WBR;
ELEMENT_NAMES[17] = ELT_META;
@ -1002,11 +998,11 @@ nsHtml5ElementName::initializeStatics()
ELEMENT_NAMES[22] = ELT_FORM;
ELEMENT_NAMES[23] = ELT_AUDIO;
ELEMENT_NAMES[24] = ELT_FECOMPONENTTRANSFER;
ELEMENT_NAMES[25] = ELT_ADDRESS;
ELEMENT_NAMES[26] = ELT_APPLET;
ELEMENT_NAMES[27] = ELT_FEDISTANTLIGHT;
ELEMENT_NAMES[28] = ELT_OUTPUT;
ELEMENT_NAMES[29] = ELT_TEXT;
ELEMENT_NAMES[25] = ELT_TR;
ELEMENT_NAMES[26] = ELT_DT;
ELEMENT_NAMES[27] = ELT_FEPOINTLIGHT;
ELEMENT_NAMES[28] = ELT_OBJECT;
ELEMENT_NAMES[29] = ELT_TFOOT;
ELEMENT_NAMES[30] = ELT_FEMORPHOLOGY;
ELEMENT_NAMES[31] = ELT_DEL;
ELEMENT_NAMES[32] = ELT_NAV;
@ -1027,18 +1023,18 @@ nsHtml5ElementName::initializeStatics()
ELEMENT_NAMES[47] = ELT_PATTERN;
ELEMENT_NAMES[48] = ELT_FEDISPLACEMENTMAP;
ELEMENT_NAMES[49] = ELT_ANIMATECOLOR;
ELEMENT_NAMES[50] = ELT_FEGAUSSIANBLUR;
ELEMENT_NAMES[51] = ELT_NOBR;
ELEMENT_NAMES[52] = ELT_DEFS;
ELEMENT_NAMES[53] = ELT_PROGRESS;
ELEMENT_NAMES[54] = ELT_FOREIGNOBJECT;
ELEMENT_NAMES[55] = ELT_FESPOTLIGHT;
ELEMENT_NAMES[56] = ELT_INPUT;
ELEMENT_NAMES[57] = ELT_RT;
ELEMENT_NAMES[58] = ELT_TT;
ELEMENT_NAMES[59] = ELT_SCRIPT;
ELEMENT_NAMES[60] = ELT_FEDROPSHADOW;
ELEMENT_NAMES[61] = ELT_ISINDEX;
ELEMENT_NAMES[50] = ELT_FOOTER;
ELEMENT_NAMES[51] = ELT_METER;
ELEMENT_NAMES[52] = ELT_CANVAS;
ELEMENT_NAMES[53] = ELT_NOFRAMES;
ELEMENT_NAMES[54] = ELT_BASEFONT;
ELEMENT_NAMES[55] = ELT_FEOFFSET;
ELEMENT_NAMES[56] = ELT_FONT;
ELEMENT_NAMES[57] = ELT_NOSCRIPT;
ELEMENT_NAMES[58] = ELT_PLAINTEXT;
ELEMENT_NAMES[59] = ELT_SELECT;
ELEMENT_NAMES[60] = ELT_MENU;
ELEMENT_NAMES[61] = ELT_FECONVOLVEMATRIX;
ELEMENT_NAMES[62] = ELT_SUMMARY;
ELEMENT_NAMES[63] = ELT_BDO;
ELEMENT_NAMES[64] = ELT_DIR;
@ -1078,29 +1074,29 @@ nsHtml5ElementName::initializeStatics()
ELEMENT_NAMES[98] = ELT_RP;
ELEMENT_NAMES[99] = ELT_BR;
ELEMENT_NAMES[100] = ELT_HR;
ELEMENT_NAMES[101] = ELT_FOOTER;
ELEMENT_NAMES[102] = ELT_HEADER;
ELEMENT_NAMES[103] = ELT_METER;
ELEMENT_NAMES[104] = ELT_TR;
ELEMENT_NAMES[105] = ELT_CANVAS;
ELEMENT_NAMES[106] = ELT_DETAILS;
ELEMENT_NAMES[107] = ELT_NOFRAMES;
ELEMENT_NAMES[108] = ELT_DT;
ELEMENT_NAMES[109] = ELT_BASEFONT;
ELEMENT_NAMES[110] = ELT_FIELDSET;
ELEMENT_NAMES[111] = ELT_FEOFFSET;
ELEMENT_NAMES[112] = ELT_FEPOINTLIGHT;
ELEMENT_NAMES[113] = ELT_FONT;
ELEMENT_NAMES[114] = ELT_LINEARGRADIENT;
ELEMENT_NAMES[115] = ELT_NOSCRIPT;
ELEMENT_NAMES[116] = ELT_OBJECT;
ELEMENT_NAMES[117] = ELT_PLAINTEXT;
ELEMENT_NAMES[118] = ELT_RECT;
ELEMENT_NAMES[119] = ELT_SELECT;
ELEMENT_NAMES[120] = ELT_TFOOT;
ELEMENT_NAMES[121] = ELT_MENU;
ELEMENT_NAMES[122] = ELT_VIEW;
ELEMENT_NAMES[123] = ELT_FECONVOLVEMATRIX;
ELEMENT_NAMES[101] = ELT_FILTER;
ELEMENT_NAMES[102] = ELT_FEGAUSSIANBLUR;
ELEMENT_NAMES[103] = ELT_MARKER;
ELEMENT_NAMES[104] = ELT_NOBR;
ELEMENT_NAMES[105] = ELT_ADDRESS;
ELEMENT_NAMES[106] = ELT_DEFS;
ELEMENT_NAMES[107] = ELT_MS;
ELEMENT_NAMES[108] = ELT_PROGRESS;
ELEMENT_NAMES[109] = ELT_APPLET;
ELEMENT_NAMES[110] = ELT_FOREIGNOBJECT;
ELEMENT_NAMES[111] = ELT_FRAMESET;
ELEMENT_NAMES[112] = ELT_FESPOTLIGHT;
ELEMENT_NAMES[113] = ELT_FEDISTANTLIGHT;
ELEMENT_NAMES[114] = ELT_INPUT;
ELEMENT_NAMES[115] = ELT_MTEXT;
ELEMENT_NAMES[116] = ELT_RT;
ELEMENT_NAMES[117] = ELT_OUTPUT;
ELEMENT_NAMES[118] = ELT_TT;
ELEMENT_NAMES[119] = ELT_RADIALGRADIENT;
ELEMENT_NAMES[120] = ELT_SCRIPT;
ELEMENT_NAMES[121] = ELT_TEXT;
ELEMENT_NAMES[122] = ELT_FEDROPSHADOW;
ELEMENT_NAMES[123] = ELT_FECOLORMATRIX;
ELEMENT_NAMES[124] = ELT_BODY;
ELEMENT_NAMES[125] = ELT_RUBY;
ELEMENT_NAMES[126] = ELT_TBODY;
@ -1180,14 +1176,12 @@ nsHtml5ElementName::initializeStatics()
ELEMENT_NAMES[200] = ELT_ABBR;
ELEMENT_NAMES[201] = ELT_CENTER;
ELEMENT_NAMES[202] = ELT_FEFUNCR;
ELEMENT_NAMES[203] = ELT_FILTER;
}
void
nsHtml5ElementName::releaseStatics()
{
delete ELT_ANNOTATION_XML;
delete ELT_ISINDEX;
delete ELT_BIG;
delete ELT_BDO;
delete ELT_COL;

Просмотреть файл

@ -110,29 +110,29 @@ public:
}
}
return -1;
}
inline static nsHtml5ElementName* elementNameByBuffer(
char16_t* buf,
int32_t offset,
int32_t length,
nsHtml5AtomTable* interner)
{
uint32_t hash = nsHtml5ElementName::bufToHash(buf, length);
jArray<int32_t, int32_t> hashes;
hashes = nsHtml5ElementName::ELEMENT_HASHES;
int32_t index = levelOrderBinarySearch(hashes, hash);
if (index < 0) {
return nullptr;
} else {
nsHtml5ElementName* elementName =
nsHtml5ElementName::ELEMENT_NAMES[index];
nsIAtom* name = elementName->name;
if (!nsHtml5Portability::localEqualsBuffer(name, buf, offset, length)) {
return nullptr;
}
return elementName;
}
inline static nsHtml5ElementName* elementNameByBuffer(
char16_t* buf,
int32_t offset,
int32_t length,
nsHtml5AtomTable* interner)
{
uint32_t hash = nsHtml5ElementName::bufToHash(buf, length);
jArray<int32_t, int32_t> hashes;
hashes = nsHtml5ElementName::ELEMENT_HASHES;
int32_t index = levelOrderBinarySearch(hashes, hash);
if (index < 0) {
return nullptr;
} else {
nsHtml5ElementName* elementName =
nsHtml5ElementName::ELEMENT_NAMES[index];
nsIAtom* name = elementName->name;
if (!nsHtml5Portability::localEqualsBuffer(name, buf, offset, length)) {
return nullptr;
}
return elementName;
}
}
private:
@ -178,7 +178,6 @@ public:
}
static nsHtml5ElementName* ELT_ANNOTATION_XML;
static nsHtml5ElementName* ELT_ISINDEX;
static nsHtml5ElementName* ELT_BIG;
static nsHtml5ElementName* ELT_BDO;
static nsHtml5ElementName* ELT_COL;

Просмотреть файл

@ -1,22 +1,22 @@
/*
* Copyright (c) 2008-2015 Mozilla Foundation
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/

Просмотреть файл

@ -1299,54 +1299,6 @@ nsHtml5TreeBuilder::startTag(nsHtml5ElementName* elementName, nsHtml5HtmlAttribu
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case ISINDEX: {
errIsindex();
if (!!formPointer && !isTemplateContents()) {
NS_HTML5_BREAK(starttagloop);
}
implicitlyCloseP();
nsHtml5HtmlAttributes* formAttrs = new nsHtml5HtmlAttributes(0);
int32_t actionIndex = attributes->getIndex(nsHtml5AttributeName::ATTR_ACTION);
if (actionIndex > -1) {
formAttrs->addAttribute(nsHtml5AttributeName::ATTR_ACTION, attributes->getValueNoBoundsCheck(actionIndex), attributes->getLineNoBoundsCheck(actionIndex));
}
appendToCurrentNodeAndPushFormElementMayFoster(formAttrs);
appendVoidElementToCurrentMayFoster(nsHtml5ElementName::ELT_HR, nsHtml5HtmlAttributes::EMPTY_ATTRIBUTES);
appendToCurrentNodeAndPushElementMayFoster(nsHtml5ElementName::ELT_LABEL, nsHtml5HtmlAttributes::EMPTY_ATTRIBUTES);
int32_t promptIndex = attributes->getIndex(nsHtml5AttributeName::ATTR_PROMPT);
if (promptIndex > -1) {
autoJArray<char16_t,int32_t> prompt = nsHtml5Portability::newCharArrayFromString(attributes->getValueNoBoundsCheck(promptIndex));
appendCharacters(stack[currentPtr]->node, prompt, 0, prompt.length);
} else {
appendIsindexPrompt(stack[currentPtr]->node);
}
nsHtml5HtmlAttributes* inputAttributes = new nsHtml5HtmlAttributes(0);
inputAttributes->addAttribute(nsHtml5AttributeName::ATTR_NAME, nsHtml5Portability::newStringFromLiteral("isindex"), tokenizer->getLineNumber());
for (int32_t i = 0; i < attributes->getLength(); i++) {
nsIAtom* attributeQName =
attributes->getLocalNameNoBoundsCheck(i);
if (nsGkAtoms::name == attributeQName ||
nsGkAtoms::prompt == attributeQName) {
attributes->releaseValue(i);
} else if (nsGkAtoms::action != attributeQName) {
inputAttributes->AddAttributeWithLocal(
attributeQName,
attributes->getValueNoBoundsCheck(i),
attributes->getLineNoBoundsCheck(i));
}
}
attributes->clearWithoutReleasingContents();
appendVoidElementToCurrentMayFoster(
nsGkAtoms::input, inputAttributes, formPointer);
pop();
appendVoidElementToCurrentMayFoster(nsHtml5ElementName::ELT_HR, nsHtml5HtmlAttributes::EMPTY_ATTRIBUTES);
pop();
if (!isTemplateContents()) {
formPointer = nullptr;
}
selfClosing = false;
NS_HTML5_BREAK(starttagloop);
}
case TEXTAREA: {
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes, formPointer);
tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RCDATA,
@ -2801,7 +2753,6 @@ nsHtml5TreeBuilder::endTag(nsHtml5ElementName* elementName)
case INPUT:
case KEYGEN:
case HR:
case ISINDEX:
case IFRAME:
case NOEMBED:
case NOFRAMES:

Просмотреть файл

@ -101,7 +101,7 @@ class nsHtml5TreeBuilder : public nsAHtml5TreeBuilderState
static const int32_t INPUT = 13;
static const int32_t ISINDEX = 14;
static const int32_t RT_OR_RP = 14;
static const int32_t LI = 15;
@ -211,8 +211,6 @@ class nsHtml5TreeBuilder : public nsAHtml5TreeBuilderState
static const int32_t IMG = 68;
static const int32_t RT_OR_RP = 69;
private:
static const int32_t IN_ROW = 0;
@ -470,7 +468,6 @@ class nsHtml5TreeBuilder : public nsAHtml5TreeBuilderState
nsIContentHandle* createAndInsertFosterParentedElement(int32_t ns, nsIAtom* name, nsHtml5HtmlAttributes* attributes, nsIContentHandle* form, nsIContentHandle* table, nsIContentHandle* stackParent);
;void insertFosterParentedCharacters(char16_t* buf, int32_t start, int32_t length, nsIContentHandle* table, nsIContentHandle* stackParent);
void appendCharacters(nsIContentHandle* parent, char16_t* buf, int32_t start, int32_t length);
void appendIsindexPrompt(nsIContentHandle* parent);
void appendComment(nsIContentHandle* parent, char16_t* buf, int32_t start, int32_t length);
void appendCommentToDocument(char16_t* buf, int32_t start, int32_t length);
void addAttributesToElement(nsIContentHandle* element, nsHtml5HtmlAttributes* attributes);

Просмотреть файл

@ -587,26 +587,6 @@ nsHtml5TreeBuilder::appendCharacters(nsIContentHandle* aParent, char16_t* aBuffe
deepTreeSurrogateParent ? deepTreeSurrogateParent : aParent);
}
void
nsHtml5TreeBuilder::appendIsindexPrompt(nsIContentHandle* aParent)
{
NS_PRECONDITION(aParent, "Null parent");
if (mBuilder) {
nsresult rv = nsHtml5TreeOperation::AppendIsindexPrompt(
static_cast<nsIContent*>(aParent),
mBuilder);
if (NS_FAILED(rv)) {
MarkAsBrokenAndRequestSuspension(rv);
}
return;
}
nsHtml5TreeOperation* treeOp = mOpQueue.AppendElement();
NS_ASSERTION(treeOp, "Tree op allocation failed.");
treeOp->Init(eTreeOpAppendIsindexPrompt, aParent);
}
void
nsHtml5TreeBuilder::appendComment(nsIContentHandle* aParent, char16_t* aBuffer, int32_t aStart, int32_t aLength)
{

Просмотреть файл

@ -463,24 +463,6 @@ nsHtml5TreeOperation::SetFormElement(nsIContent* aNode, nsIContent* aParent)
}
}
nsresult
nsHtml5TreeOperation::AppendIsindexPrompt(nsIContent* parent, nsHtml5DocumentBuilder* aBuilder)
{
nsXPIDLString prompt;
nsresult rv =
nsContentUtils::GetLocalizedString(nsContentUtils::eFORMS_PROPERTIES,
"IsIndexPromptWithSpace", prompt);
uint32_t len = prompt.Length();
if (NS_FAILED(rv)) {
return rv;
}
if (!len) {
// Don't bother appending a zero-length text node.
return NS_OK;
}
return AppendText(prompt.BeginReading(), len, parent, aBuilder);
}
nsresult
nsHtml5TreeOperation::FosterParentText(nsIContent* aStackParent,
char16_t* aBuffer,
@ -712,10 +694,6 @@ nsHtml5TreeOperation::Perform(nsHtml5TreeOpExecutor* aBuilder,
uint32_t length = mFour.integer;
return AppendText(buffer, length, parent, aBuilder);
}
case eTreeOpAppendIsindexPrompt: {
nsIContent* parent = *mOne.node;
return AppendIsindexPrompt(parent, aBuilder);
}
case eTreeOpFosterParentText: {
nsIContent* stackParent = *mOne.node;
char16_t* buffer = mTwo.unicharPtr;

Просмотреть файл

@ -31,7 +31,6 @@ enum eHtml5TreeOperation {
eTreeOpCreateElementNotNetwork,
eTreeOpSetFormElement,
eTreeOpAppendText,
eTreeOpAppendIsindexPrompt,
eTreeOpFosterParentText,
eTreeOpAppendComment,
eTreeOpAppendCommentToDocument,

Просмотреть файл

@ -2,66 +2,48 @@
<isindex>
#errors
(1,9): expected-doctype-but-got-start-tag
(1,9): deprecated-tag
(1,9): expected-closing-tag-but-got-eof
#document
| <html>
| <head>
| <body>
| <form>
| <hr>
| <label>
| "This is a searchable index. Enter search keywords: "
| <input>
| name="isindex"
| <hr>
| <isindex>
#data
<isindex name="A" action="B" prompt="C" foo="D">
#errors
(1,48): expected-doctype-but-got-start-tag
(1,48): deprecated-tag
(1,48): expected-closing-tag-but-got-eof
#document
| <html>
| <head>
| <body>
| <form>
| <isindex>
| action="B"
| <hr>
| <label>
| "C"
| <input>
| foo="D"
| name="isindex"
| <hr>
| foo="D"
| name="A"
| prompt="C"
#data
<form><isindex>
#errors
(1,6): expected-doctype-but-got-start-tag
(1,15): deprecated-tag
(1,15): expected-closing-tag-but-got-eof
#document
| <html>
| <head>
| <body>
| <form>
| <isindex>
#data
<body><isindex><form>
<!doctype html><isindex>x</isindex>x
#errors
6: Start tag seen without seeing a doctype first. Expected “<!DOCTYPE html>”.
15: “isindex” seen.
21: End of file seen and there were open elements.
21: Unclosed element “form”.
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <form>
| <hr>
| <label>
| "This is a searchable index. Enter search keywords: "
| <input>
| name="isindex"
| <hr>
| <form>
| <isindex>
| "x"
| "x"

Просмотреть файл

@ -1390,13 +1390,7 @@
| <form>
| <template>
| content
| <form>
| <hr>
| <label>
| "This is a searchable index. Enter search keywords: "
| <input>
| name="isindex"
| <hr>
| <isindex>
#data
<body><form><template><isindex><form>
@ -1408,11 +1402,5 @@
| <form>
| <template>
| content
| <form>
| <hr>
| <label>
| "This is a searchable index. Enter search keywords: "
| <input>
| name="isindex"
| <hr>
| <form>
| <isindex>
| <form>

Просмотреть файл

@ -81,87 +81,17 @@
| <p>
| <h1>
#data
<!doctype html><form><isindex>
#errors
(1,30): deprecated-tag
(1,30): expected-closing-tag-but-got-eof
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <form>
#data
<!doctype html><isindex action="POST">
#errors
(1,38): deprecated-tag
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <form>
| action="POST"
| <hr>
| <label>
| "This is a searchable index. Enter search keywords: "
| <input>
| name="isindex"
| <hr>
#data
<!doctype html><isindex prompt="this is isindex">
#errors
(1,49): deprecated-tag
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <form>
| <hr>
| <label>
| "this is isindex"
| <input>
| name="isindex"
| <hr>
#data
<!doctype html><isindex type="hidden">
#errors
(1,38): deprecated-tag
(1,38): expected-closing-tag-but-got-eof
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <form>
| <hr>
| <label>
| "This is a searchable index. Enter search keywords: "
| <input>
| name="isindex"
| type="hidden"
| <hr>
#data
<!doctype html><isindex name="foo">
#errors
(1,35): deprecated-tag
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <form>
| <hr>
| <label>
| "This is a searchable index. Enter search keywords: "
| <input>
| name="isindex"
| <hr>
| <isindex>
| type="hidden"
#data
<!doctype html><ruby><p><rp>
@ -1324,6 +1254,7 @@
(1,49): foster-parenting-end-tag
(1,44): adoption-agency-1.3
(1,44): adoption-agency-1.3
(1,50): foster-parenting-character
(1,50): eof-in-table
#document
| <!DOCTYPE html>

Просмотреть файл

@ -75,6 +75,35 @@
| <head>
| <frameset>
#data
<!DOCTYPE html><frameset> te st
#errors
(1,29): unexpected-char-in-frameset
(1,29): unexpected-char-in-frameset
(1,29): unexpected-char-in-frameset
(1,29): unexpected-char-in-frameset
(1,29): eof-in-frameset
#document
| <!DOCTYPE html>
| <html>
| <head>
| <frameset>
| " "
#data
<!DOCTYPE html><frameset></frameset> te st
#errors
(1,29): unexpected-char-after-frameset
(1,29): unexpected-char-after-frameset
(1,29): unexpected-char-after-frameset
(1,29): unexpected-char-after-frameset
#document
| <!DOCTYPE html>
| <html>
| <head>
| <frameset>
| " "
#data
<!DOCTYPE html><frameset><!DOCTYPE html>
#errors
@ -195,6 +224,8 @@
#errors
(1,8): eof-in-attribute-name
(1,8): expected-doctype-but-got-eof
#new-errors
(1:9) eof-in-tag
#document
| <html>
| <head>
@ -207,6 +238,10 @@
(1,32): named-entity-without-semicolon
(1,33): attributes-in-end-tag
(1,33): unexpected-end-tag-before-html
#new-errors
(1:24) unexpected-character-in-attribute-name
(1:33) missing-semicolon-after-character-reference
(1:33) end-tag-with-attributes
#document
| <!DOCTYPE html>
| <html>
@ -219,6 +254,8 @@
#errors
(1,9): need-space-after-doctype
(1,54): expected-named-closing-tag-but-got-eof
#new-errors
(1:10) missing-whitespace-before-doctype-name
#document
| <!DOCTYPE html>
| <html>
@ -243,6 +280,8 @@
#errors
(1,2): expected-numeric-entity
(1,2): expected-doctype-but-got-chars
#new-errors
(1:3) absence-of-digits-in-numeric-character-reference
#document
| <html>
| <head>
@ -254,6 +293,8 @@
#errors
(1,3): expected-numeric-entity
(1,3): expected-doctype-but-got-chars
#new-errors
(1:4) absence-of-digits-in-numeric-character-reference
#document
| <html>
| <head>
@ -265,6 +306,8 @@
#errors
(1,3): expected-numeric-entity
(1,3): expected-doctype-but-got-chars
#new-errors
(1:4) absence-of-digits-in-numeric-character-reference
#document
| <html>
| <head>
@ -276,6 +319,8 @@
#errors
(1,4): numeric-entity-without-semicolon
(1,4): expected-doctype-but-got-chars
#new-errors
(1:5) missing-semicolon-after-character-reference
#document
| <html>
| <head>
@ -296,6 +341,8 @@
<!doctypehtml><p><li>
#errors
(1,9): need-space-after-doctype
#new-errors
(1:10) missing-whitespace-before-doctype-name
#document
| <!DOCTYPE html>
| <html>
@ -308,6 +355,8 @@
<!doctypehtml><p><dt>
#errors
(1,9): need-space-after-doctype
#new-errors
(1:10) missing-whitespace-before-doctype-name
#document
| <!DOCTYPE html>
| <html>
@ -320,6 +369,8 @@
<!doctypehtml><p><dd>
#errors
(1,9): need-space-after-doctype
#new-errors
(1:10) missing-whitespace-before-doctype-name
#document
| <!DOCTYPE html>
| <html>
@ -333,6 +384,8 @@
#errors
(1,9): need-space-after-doctype
(1,23): expected-closing-tag-but-got-eof
#new-errors
(1:10) missing-whitespace-before-doctype-name
#document
| <!DOCTYPE html>
| <html>
@ -357,6 +410,8 @@
#errors
(1,4): named-entity-without-semicolon
(1,4): expected-doctype-but-got-chars
#new-errors
(1:5) missing-semicolon-after-character-reference
#document
| <html>
| <head>
@ -368,6 +423,8 @@
#errors
(1,3): expected-named-entity
(1,3): expected-doctype-but-got-chars
#new-errors
(1:5) unknown-named-character-reference
#document
| <html>
| <head>
@ -400,6 +457,8 @@
<!DOCTYPE html><!-- X
#errors
(1,21): eof-in-comment
#new-errors
(1:22) eof-in-comment
#document
| <!DOCTYPE html>
| <!-- X -->
@ -442,7 +501,6 @@
<!DOCTYPE html><select><optgroup><option></optgroup><option><select><option>
#errors
(1,68): unexpected-select-in-select
(1,76): expected-closing-tag-but-got-eof
#document
| <!DOCTYPE html>
| <html>
@ -507,6 +565,8 @@
<!DOCTYPE html><!-- XXX - XXX
#errors
(1,29): eof-in-comment
#new-errors
(1:30) eof-in-comment
#document
| <!DOCTYPE html>
| <!-- XXX - XXX -->
@ -524,24 +584,6 @@
| <head>
| <body>
#data
<isindex test=x name=x>
#errors
(1,23): expected-doctype-but-got-start-tag
(1,23): deprecated-tag
#document
| <html>
| <head>
| <body>
| <form>
| <hr>
| <label>
| "This is a searchable index. Enter search keywords: "
| <input>
| name="isindex"
| test="x"
| <hr>
#data
test
test
@ -705,6 +747,10 @@ x { content:"</style" } "
(1,19): unexpected-character-after-solidus-in-tag
(1,21): unexpected-character-after-solidus-in-tag
(1,23): unexpected-character-after-solidus-in-tag
#new-errors
(1:20) unexpected-solidus-in-tag
(1:22) unexpected-solidus-in-tag
(1:24) unexpected-solidus-in-tag
#document
| <!DOCTYPE html>
| <html>
@ -720,6 +766,8 @@ x { content:"</style" } "
<!DOCTYPE html><!--x--
#errors
(1,22): eof-in-comment-double-dash
#new-errors
(1:23) eof-in-comment
#document
| <!DOCTYPE html>
| <!-- x -->
@ -748,6 +796,9 @@ x { content:"</style" } "
(1,20): expected-space-or-right-bracket-in-doctype
(1,25): unknown-doctype
(1,35): unexpected-char-in-comment
#new-errors
(1:21) invalid-character-sequence-after-doctype-name
(1:35) nested-comment
#document
| <!DOCTYPE <!doctype>
| <html>

Просмотреть файл

@ -1,5 +0,0 @@
[historical.html]
type: testharness
[<input name=isindex> should not be supported]
expected: FAIL

Просмотреть файл

@ -1,44 +0,0 @@
[html5lib_isindex.html?run_type=write_single]
type: testharness
[html5lib_isindex.html 579ca96e69c47b3d2ac83f1aa79a450b745d21f3]
expected: FAIL
[html5lib_isindex.html cb91f67071d81dd18d7ba9990de8f0f845c375f0]
expected: FAIL
[html5lib_isindex.html bd8ac64cc8f1422fac94bbe1c8828c0b51dca3f2]
expected: FAIL
[html5lib_isindex.html 4303a393c6933743460836cb5e7dd29ca7fd6f43]
expected: FAIL
[html5lib_isindex.html?run_type=uri]
type: testharness
[html5lib_isindex.html 579ca96e69c47b3d2ac83f1aa79a450b745d21f3]
expected: FAIL
[html5lib_isindex.html cb91f67071d81dd18d7ba9990de8f0f845c375f0]
expected: FAIL
[html5lib_isindex.html bd8ac64cc8f1422fac94bbe1c8828c0b51dca3f2]
expected: FAIL
[html5lib_isindex.html 4303a393c6933743460836cb5e7dd29ca7fd6f43]
expected: FAIL
[html5lib_isindex.html?run_type=write]
type: testharness
[html5lib_isindex.html 579ca96e69c47b3d2ac83f1aa79a450b745d21f3]
expected: FAIL
[html5lib_isindex.html cb91f67071d81dd18d7ba9990de8f0f845c375f0]
expected: FAIL
[html5lib_isindex.html bd8ac64cc8f1422fac94bbe1c8828c0b51dca3f2]
expected: FAIL
[html5lib_isindex.html 4303a393c6933743460836cb5e7dd29ca7fd6f43]
expected: FAIL

Просмотреть файл

@ -9,18 +9,12 @@
[html5lib_tests19.html d098e8a39897cd8453fc18399622e413872b054c]
expected: FAIL
[html5lib_tests19.html 3b1730b917da1c33da80ee08d41573c44404c663]
expected: FAIL
[html5lib_tests19.html?run_type=uri]
type: testharness
[html5lib_tests19.html d098e8a39897cd8453fc18399622e413872b054c]
expected: FAIL
[html5lib_tests19.html 3b1730b917da1c33da80ee08d41573c44404c663]
expected: FAIL
[html5lib_tests19.html?run_type=write_single]
type: testharness
@ -30,6 +24,3 @@
[html5lib_tests19.html d098e8a39897cd8453fc18399622e413872b054c]
expected: FAIL
[html5lib_tests19.html 3b1730b917da1c33da80ee08d41573c44404c663]
expected: FAIL

Просмотреть файл

@ -2,46 +2,48 @@
<isindex>
#errors
(1,9): expected-doctype-but-got-start-tag
(1,9): deprecated-tag
(1,9): expected-closing-tag-but-got-eof
#document
| <html>
| <head>
| <body>
| <form>
| <hr>
| <label>
| "This is a searchable index. Enter search keywords: "
| <input>
| name="isindex"
| <hr>
| <isindex>
#data
<isindex name="A" action="B" prompt="C" foo="D">
#errors
(1,48): expected-doctype-but-got-start-tag
(1,48): deprecated-tag
(1,48): expected-closing-tag-but-got-eof
#document
| <html>
| <head>
| <body>
| <form>
| <isindex>
| action="B"
| <hr>
| <label>
| "C"
| <input>
| foo="D"
| name="isindex"
| <hr>
| foo="D"
| name="A"
| prompt="C"
#data
<form><isindex>
#errors
(1,6): expected-doctype-but-got-start-tag
(1,15): deprecated-tag
(1,15): expected-closing-tag-but-got-eof
#document
| <html>
| <head>
| <body>
| <form>
| <isindex>
#data
<!doctype html><isindex>x</isindex>x
#errors
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <isindex>
| "x"
| "x"