Граф коммитов

4711 Коммитов

Автор SHA1 Сообщение Дата
Henri Sivonen 58476d7f17 Bug 1701828 - meta charset rewrite. r=smaug
Implements https://github.com/whatwg/html/issues/6962 . Improves performance
when <meta charset> occurs in head but after the first kilobyte and aligns
behavior better with WebKit and Blink.

The main change is to avoid reloads when meta appears within head but
after the first kilobyte. Prior to this change, Gecko reloaded in that
case (in compliance with the spec!) even though WebKit and Blink did not.

Differences from WebKit and Blink:

* WebKit and Blink honor <meta charset> in <noscript>. This implementation
  does not.
* WebKit and Blink look for meta as if the tree builder was unaware of
  foreign content. This implementation is foreign content-aware. This
  makes a difference for CDATA sections that contain a > before the meta
  as well as style and script elements within foreign content. This could
  happen if the CDATA section that has mysteriously been introduced around
  a what looks like a meta tag also contains another prior tag-looking
  run of text.
* This implementation processes rel=preload and speculative loads that are
  seen before <meta charset> has been seen. WebKit and Blink instead first
  look for the meta and rewind before starting speculative parsing.
* Unlike WebKit, if there is neither an honored meta nor syntax resembling
  an XML declaration, detection from content takes place (as in Blink).
* Unlike Blink, if there is neither an honored meta nor syntax resembling
  an XML declaration, the detection from content is not dependent of network
  buffer boundaries.
* Unlike Blink, detection from content can trigger a reload at the end of
  the stream if the guess made at that point differs from the first guess.
  (See below for the definition of the input to the first guess.)

Differences from the old spec and Gecko previously:

* Meta inside script and RCDATA elements is no longer honored.
* Late meta is now ignored and no longer triggers a reload.
* Later meta counts as early enough meta: In addition to the previous
  meta within the first 1024 bytes, now a meta that started within the first
  1024 bytes counts as early enough. Additionally, if by then there hasn't
  been a template start tag and head hasn't ended, meta occurring before the
  earlier of the end of the head or a template start tag counts as early
  enough.
* Meta now counts as not-late even if the encoding label has numeric
  character reference escapes.
* Syntax resembling an XML declaration longer than a kilobyte is honored if
  there is no honored meta.
* If there is neither an honored meta nor syntax resembling an XML declaration,
  the initial chardetng scan is potentially longer than before: the first 1024
  bytes, the token spanning the 1024-byte boundary if there is such a token,
  and, if by then head hasn't ended and there hasn't been a template start tag
  until the end of the template start tag or the end of the token that causes
  head to end, ever comes first. However, if the token implying the end of the
  head is a text token, bytes only to the end of the previous non-text token is
  considered. (This definition avoids depending on network buffer boundaries.)
* XML View Source now uses the code for syntax resembling an XML declaration
  instead of expat for extracting the internal encoding label.

Reftest are added as both WPT and Gecko reftests in order to test both http:
and file: URL scenarios. The Gecko tests retain the WPT <link> tags in order
to use the exact same bytes.

An encoding declaration has been added to a number of old tests that didn't
intend to test the new speculation behavior especially in the context of
https://bugzilla.mozilla.org/show_bug.cgi?id=1727750 .

Differential Revision: https://phabricator.services.mozilla.com/D125808
2021-12-07 07:35:32 +00:00
nchevobbe b31e82ce90 Bug 1238861 - Display a warning message when doctype is not standard. r=hsivonen.
This patchs adds new error messages which are extending existing ones,
providing extra information to the user.
A webconsole mochitest is added in the following patch of this stack.

Differential Revision: https://phabricator.services.mozilla.com/D131889
2021-12-02 22:46:22 +00:00
Chris Peterson f6fdbf028a Bug 1738401 - Remove -Wno-shadow warning suppressions. r=firefox-build-system-reviewers,glandium
-Wshadow warnings are not enabled globally, so these -Wno-shadow suppressions have no effect. I had intended to enable -Wshadow globally along with these suppressions in some directories (in bug 1272513), but that was blocked by other issues.

There are too many -Wshadow warnings (now over 2000) to realistically fix them all. We should remove all these unnecessary -Wno-shadow flags cluttering many moz.build files.

Differential Revision: https://phabricator.services.mozilla.com/D132289
2021-12-01 06:40:04 +00:00
Deian Stefan 1ee9a841d8 Bug 1732201 - Sandbox woff2 in OTS using RLBox r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D126435
2021-11-27 23:30:49 +00:00
Cristian Tuns f0ef0360eb Backed out changeset d486edc7499b (bug 1732201) for causing web-platform-tests failures on header-totalsfntsize-001.xht CLOSED TREE 2021-11-27 07:32:22 -05:00
Deian Stefan 0a5e1f2075 Bug 1732201 - Sandbox woff2 in OTS using RLBox r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D126435
2021-11-27 04:41:21 +00:00
Shravan Narayan 1cc3caab38 Bug 1743007 - Convert expat XML_StopParser API to take an int param instead of u8 r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D132171
2021-11-25 21:02:10 +00:00
Shravan Narayan 361d7f84bb Bug 1742914 - Add explicit casts for u8 and u16 parameters to RLBox sandbox_invoke r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D132113
2021-11-25 05:17:33 +00:00
Cosmin Sabou a543cd6cc8 Backed out changeset 524df7136a1f (bug 1742914) for causing assertion failures on htmlparser/nsExpatDriver.cpp. CLOSED TREE 2021-11-25 11:14:20 +02:00
Shravan Narayan 7fe9421af3 Bug 1742914 - Add explicit casts for u8 and u16 parameters to RLBox sandbox_invoke r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D132113
2021-11-25 05:17:33 +00:00
Deian Stefan 86e82e1036 Bug 1688452 - Retrofit nsExpatDriver to use RLBoxed libexpat r=tjr,peterv,bholley,glandium
Differential Revision: https://phabricator.services.mozilla.com/D104658
2021-11-22 06:19:17 +00:00
Sandor Molnar 51a05715fe Backed out changeset 4294063f1606 (bug 1688452) for causing mochitest and wpt failures. CLOSED TREE 2021-11-20 13:00:27 +02:00
Deian Stefan fcd2e09518 Bug 1688452 - Retrofit nsExpatDriver to use RLBoxed libexpat r=tjr,peterv,bholley,glandium
Differential Revision: https://phabricator.services.mozilla.com/D104658
2021-11-19 21:28:53 +00:00
Alexandru Michis d4f3d0994e Backed out changeset 7893bbd002e0 (bug 1688452) for causing bustages in nsRLBoxExpatDriver.
CLOSED TREE
2021-11-19 15:54:31 +02:00
Deian Stefan 76c5d8907d Bug 1688452 - Retrofit nsExpatDriver to use RLBoxed libexpat r=tjr,peterv,bholley,glandium
Differential Revision: https://phabricator.services.mozilla.com/D104658
2021-11-19 06:08:36 +00:00
Henri Sivonen e266e0f13a Bug 1741219 - Remove Expat usage from nsHtml5StreamParser. r=smaug
To be overwritten by the patch for https://bugzilla.mozilla.org/show_bug.cgi?id=1701828 .

Differential Revision: https://phabricator.services.mozilla.com/D131215
2021-11-16 16:02:04 +00:00
Andi-Bogdan Postelnicu c8e0f87391 Bug 1519636 - First reformat with clang-format 13.0.0. r=firefox-build-system-reviewers,sylvestre,mhentges
Updated with clang-format version 13.0.0 (taskcluster-OgjH5lasS5K_fvefdRcJVg)

Depends on D131114

Differential Revision: https://phabricator.services.mozilla.com/D129119
2021-11-16 08:07:30 +00:00
ssummar 0992acc367 Bug 1603127 - Replaced mozilla::Tuple with std::tuple and applied structured bindings in mozilla/Encoding.h. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D129920
2021-11-08 08:14:00 +00:00
Cristian Tuns 71486b8924 Backed out changeset 7e8e3747c3f8 (bug 1603127) for causing toolchains build bustages (Bug 1739589). CLOSED TREE 2021-11-05 07:23:45 -04:00
ssummar 508562cc85 Bug 1603127 - Replaced mozilla::Tuple with std::tuple and applied structured bindings in mozilla/Encoding.h. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D129920
2021-11-05 05:33:58 +00:00
Edgar Chen 3f791b5050 Bug 1556352 - Part 1: Do not set form owner from parser for form-associated custom element; r=smaug
See steps 14 of https://html.spec.whatwg.org/commit-snapshots/3ad5159be8f27e110a70cefadcb50fc45ec21b05/#create-an-element-for-the-token

From spec perspective, FACE needs this in order to enqueue the formAssociated callback
while FACE is inserted into document. Otherwise it would bail out in
https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#association-of-controls-and-forms:parser-inserted-flag,
and wouldn't run https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#reset-the-form-owner
steps nor https://html.spec.whatwg.org/multipage/custom-elements.html#custom-element-reactions:reset-the-form-owner

From implementation perspective, we don't implement parser inserted flag, but we do
update the form owner from parser. Not doing this would make the subsequent part
which implements formAssociated callback a bit simpler, where we don't need to consider
or handle the case that form owner is set from parser.

Differential Revision: https://phabricator.services.mozilla.com/D129646
2021-10-28 10:29:37 +00:00
ssummar 51c0ff21e5 Bug 1626517 - Replaced mozilla::Unused with mozilla::Ignore in mozilla::Decoder/mozilla::Encoder calls. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D129022
2021-10-25 12:31:41 +00:00
Evgenia Kotovich 0d0980ee0d Bug 1576768 - Automatically format .sjs files using prettier. r=Standard8,agi,zombie,extension-reviewers
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D128482
2021-10-18 09:26:33 +00:00
Noemi Erli 2bba3cec69 Backed out changeset 2ab6bb03dcc1 (bug 1576768) for causing failures in test_double_submit.html CLOSED TREE 2021-10-18 02:05:57 +03:00
Evgenia Kotovich 3e3dff109c Bug 1576768 - Automatically format .sjs files using prettier. r=Standard8,agi,zombie,extension-reviewers
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D128482
2021-10-17 14:59:14 +00:00
Alexandru Michis dac6815201 Backed out changeset 7c08aa027893 (bug 1576768) for causing multiple failures.
CLOSED TREE
2021-10-15 16:52:43 +03:00
Evgenia Kotovich a8b32926fa Bug 1576768 - Automatically format .sjs files using prettier. r=Standard8,agi,zombie,extension-reviewers
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D128482
2021-10-15 12:58:11 +00:00
Henri Sivonen 8954e892c8 Bug 1735161 - Update MDN URL in speculation failure message. r=smaug DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D128095
2021-10-12 06:49:15 +00:00
Geoff Brown 7e36862b61 Bug 1724296 - Remove many skip-if(verify) test annotations (mochitest pt 2); r=jmaher
This completes the review of skip-if(verify) in mochitest.ini.

Differential Revision: https://phabricator.services.mozilla.com/D127992
2021-10-09 16:07:32 +00:00
Emilio Cobos Álvarez a002eeaccb Bug 1733945 - Simplify reftest annotations to assume skiaContent == true. r=jrmuizel
Generated with:

  2180efaf7c

Differential Revision: https://phabricator.services.mozilla.com/D127428
2021-10-04 15:19:10 +00:00
Henri Sivonen 7588a257ed Bug 1724243 - Make text/plain and MediaDocuments use the Standards Mode. r=smaug,emilio
Differential Revision: https://phabricator.services.mozilla.com/D123318
2021-10-01 12:55:28 +00:00
Cosmin Sabou 0d612db0fb Backed out 4 changesets (bug 1688452) for assertion and bc failures on browser_translation_bing.js.
Backed out changeset 1a720cffc019 (bug 1688452)
Backed out changeset 797a7e243d43 (bug 1688452)
Backed out changeset 00fd325069fa (bug 1688452)
Backed out changeset 23ef68478e93 (bug 1688452)
2021-09-29 20:13:33 +03:00
Deian Stefan 20476da693 Bug 1688452 - Part 4: Add Wasm sandbox support for RLBoxed libexpat r=tjr
Depends on D126369

Differential Revision: https://phabricator.services.mozilla.com/D106254
2021-09-29 14:31:45 +00:00
Deian Stefan ac3df5e3ad Bug 1688452 - Part 3: Eliminate redundant callback implementation in RLBoxed libexpat r=tjr
The default handler and character-data handler callbacks are identical
and some Windows compilers just reconciled them into a single function.
This, unfortunately, resulted in a RLBox runtime error: the same
callback was registered twice. This patch removes the duplicate handler
implementation and just sets the character-data handler callback as the
default handler.

Depends on D104658

Differential Revision: https://phabricator.services.mozilla.com/D126369
2021-09-29 14:31:45 +00:00
Deian Stefan 7d9f1d992f Bug 1688452 - Part 2: Retrofit nsExpatDriver to use RLBoxed libexpat r=tjr,peterv
Depends on D117102

Differential Revision: https://phabricator.services.mozilla.com/D104658
2021-09-29 14:31:44 +00:00
Deian Stefan 4bb477c01b Bug 1688452 - Part 1: Retrofit nsHtml5StreamParser to use RLBoxed libexpat r=tjr,peterv
Differential Revision: https://phabricator.services.mozilla.com/D117102
2021-09-29 14:31:44 +00:00
Mike Hommey cf6298e15e Bug 1732208 - Silence the unused-but-set-variable warning in parser. r=hsivonen
parser/html/nsHtml5StreamParser.cpp:1046:10: error: variable 'totalRead' set but not used [-Werror,-Wunused-but-set-variable]
  size_t totalRead = 0;
         ^

Differential Revision: https://phabricator.services.mozilla.com/D126458
2021-09-28 00:02:47 +00:00
Edgar Chen eeb0629c16 Bug 1558793 - Remove invalid comment and assertion in nsHtml5TreeOperation::SetFormElement; r=hsivonen
Per https://html.spec.whatwg.org/#form-associated-element, img is a form-associated
element, and we do handle the img case well.

Differential Revision: https://phabricator.services.mozilla.com/D125754
2021-09-16 12:59:03 +00:00
Nicklas Boman e07e317034 Bug 1308103 - Replace PL_strcmp/PL_strncmp with strcmp/strncmp in xpcom/ and parser/htmlparser/ r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D123879
2021-09-09 19:36:10 +00:00
Henri Sivonen 2a9936f40a Bug 1153920 - Conform ampersand error reporting to HTML spec. r=smaug
Created by inlining the `AMBIGUOUS_AMPERSAND` state in
https://github.com/validator/htmlparser/pull/30 back into the states
that transitioned to `AMBIGUOUS_AMPERSAND` in that PR by
Michael(tm) Smith.

Differential Revision: https://phabricator.services.mozilla.com/D81992
2021-09-02 11:13:37 +00:00
Henri Sivonen 5397b4f0a9 Bug 1727491 - Remove support for BOMless unlabeled Latin1 Supplement-range UTF-16LE|BE. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D123596
2021-09-01 09:13:29 +00:00
criss 02cf484af4 Backed out changeset dc6b9ca8f3fa (bug 1727491) for causing mochitest failures on test_bug631751be.html. CLOSED TREE 2021-08-30 11:14:38 +03:00
Henri Sivonen 4233abeb9e Bug 1727491 - Remove support for BOMless unlabeled Latin1 Supplement-range UTF-16LE|BE. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D123596
2021-08-30 07:11:09 +00:00
Henri Sivonen 58e0b2946c Bug 1716290 - Remove protections against the document changing as part of kCharsetFromFinalUserForcedAutoDetection reload. r=emk,emilio
NOTE! In cases where there is no HTTP-layer encoding declaration, and CSS
parsing inherits the encoding from the HTML document, for preloads, this
changes the inherited encoding from windows-1252 to UTF-8 in order to
make the speculative encoding correct in the common `<meta charset=utf-8>`
case.

Differential Revision: https://phabricator.services.mozilla.com/D123593
2021-08-26 18:02:15 +00:00
criss 2be42eea15 Backed out changeset ab805f2926d5 (bug 1716290) for causing failures on link-header-preload.html. CLOSED TREE 2021-08-26 12:07:17 +03:00
Henri Sivonen ff85d45e69 Bug 1716290 - Remove protections against the document changing as part of kCharsetFromFinalUserForcedAutoDetection reload. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D123593
2021-08-26 06:25:31 +00:00
Andi-Bogdan Postelnicu 2fc4f70e9b Bug 1725145 - Preparation for the hybrid build env. r=necko-reviewers,firefox-build-system-reviewers,valentin,glandium
Automatically generated path that adds flag `REQUIRES_UNIFIED_BUILD = True` to `moz.build`
when the module governed by the build config file is not buildable outside on the unified environment.

This needs to be done in order to have a hybrid build system that adds the possibility of combing
unified build components with ones that are built outside of the unified eco system.

Differential Revision: https://phabricator.services.mozilla.com/D122345
2021-08-25 10:46:17 +00:00
Andi-Bogdan Postelnicu 9945b94835 Bug 1519636 - Reformat recent changes to the Google coding style. r=emilio
Updated with clang-format version 12.0.1 (taskcluster-dNZqCRqWRTqa6cZxPKxh7Q)

Differential Revision: https://phabricator.services.mozilla.com/D122814
2021-08-23 09:30:23 +00:00
Henri Sivonen 50f9d31d19 Bug 1726374 - Correctly highlight <!-- a <!-->b in View Source. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D123061
2021-08-20 09:03:33 +00:00
Brindusan Cristian e80f2b4691 Backed out changeset 8370f995a458 (bug 1726374) for causing reftest failures in view-source:bug1319410-1.html
CLOSED TREE
2021-08-19 18:25:51 +03:00
Henri Sivonen 974eddfb01 Bug 1726374 - Correctly highlight <!-- a <!-->b in View Source. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D123061
2021-08-19 13:00:25 +00:00
Michael[tm] Smith f3bee8a712 Bug 1541822 - Ensure doctype name is set to null when missing r=smaug
This change ensures that the tokenizer sets the doctype name to null
when the doctype name is missing in the input source.

Otherwise, without this change, the doctype name is set to the empty
string — which doesn’t conform to the requirements in the HTML spec, and
which causes us to fail 9 tests in the html5lib-tests suite.

Relates to https://github.com/validator/htmlparser/issues/35

Differential Revision: https://phabricator.services.mozilla.com/D122936
2021-08-19 10:02:57 +00:00
Michael[tm] Smith d76dfd530f Bug 1541846 - Ensure namespace-aware “clear the stack” handling r=smaug
This change ensures that for all cases with spec requirements in the
form “clear the stack back to a foo context” — which involves checking
for elements with particular names — we only look for elements in the
HTML namespace, rather than additionally looking for elements which
aren’t in the HTML namespace but that also have those particular names.

Otherwise, without this change, we aren’t in conformance with the spec
requirements, and we fail several cases in the html5lib-tests suite.

Fixes https://github.com/validator/htmlparser/issues/33

Differential Revision: https://phabricator.services.mozilla.com/D122722
2021-08-17 12:02:13 +00:00
Michael[tm] Smith 2a15667bbd Bug 1725946 - Conform tokenizer-only U+0000 NUL handling to spec r=smaug
This change brings the tokenizer’s handling of U+0000 NUL characters in
the DATA state and the CDATA section state into conformance with the
requirements in the HTML spec — for the case where only tokenization is
being performed, without tree construction; that is, the case where the
tokenizer() method is called, rather than parse() or parseFragment().

Specifically, the tokenization steps defined in the spec require that
when a U+0000 NUL is consumed in the DATA state or in the CDATA section
state, the parser must then emit a U+0000 NUL. But when performing tree
construction, the spec requires that when a U+0000 NUL is consumed, the
parser must instead emit a U+FFFD REPLACEMENT CHARACTER.

Without this change, the parser always emits a U+FFFD REPLACEMENT
CHARACTER — even when only tokenization is being performed. That causes
us to fail a number of tests in html5lib-tests suite.

For more background on the relevant behavior, see the following:

* https://www.w3.org/Bugs/Public/show_bug.cgi?id=9659
* https://github.com/whatwg/html/commit/d98f83e
* https://github.com/validator/htmlparser/commit/9b9c263

Relates to https://github.com/validator/htmlparser/issues/35

Differential Revision: https://phabricator.services.mozilla.com/D122721
2021-08-17 10:09:10 +00:00
Henri Sivonen 5fd94ac23d Bug 1650087 test - Optional table part end tags before template close should not be flagged as errors. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D122712
2021-08-16 11:10:19 +00:00
Michael[tm] Smith 21de022eae Bug 1650087 - Support “generate all implied end tags thoroughly” r=smaug
When the parser encounters a `</template>` end tag and there are other
open elements, the HTML spec requires the parser to “generate all
implied end tags thoroughly”, which unlike “generate implied end tags”
also includes generating implied end tags for table-parts elements
(caption, colgroup, tbody, thead, tfoot, td, th, and tr).

Differential Revision: https://phabricator.services.mozilla.com/D82020
2021-08-16 11:10:19 +00:00
Michael[tm] Smith 9b06c493c5 Bug 1650066 - Correct error for EOF in “in template” state r=smaug
Doing `errUnclosedElements(eltPos, "template")` for EOF in the “in
template” state results in the error message “End tag `template` seen, but
there were open elements”, which is all wrong because the actual problem is
that though a `template` end tag was expected, EOF was reached without a
`template` end tag being seen.

So let’s instead when we reach this just report the list of open elements.

Differential Revision: https://phabricator.services.mozilla.com/D122598
2021-08-16 05:16:58 +00:00
Henri Sivonen de1b71fe15 Bug 1650066 preparation - Add errListUnclosedStartTags for HTML tree builder error reporting. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D122597
2021-08-16 05:16:58 +00:00
Henri Sivonen 54015a7af2 Bug 1319410 test - "--" in a comment is non-error but "<!--" in a comment is an error. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D122347
2021-08-16 05:01:10 +00:00
Michael[tm] Smith 3e0410518d Bug 1319410 fixup - Stay in the COMMENT_LESSTHAN state, annotate fall-throughs. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D82163
2021-08-16 05:01:10 +00:00
Michael[tm] Smith 7c2dd70690 Bug 1319410 - Make consecutive hyphens in comments a non-error r=smaug
Also allow `<!-->` at (IE conditional) comment end

See https://github.com/whatwg/html/pull/1356
See https://github.com/whatwg/html/pull/1456

Differential Revision: https://phabricator.services.mozilla.com/D82000
2021-08-16 05:01:09 +00:00
Henri Sivonen 10374eb129 Bug 1724101 - Protect nsHtml5StreamListener::mDelegate with a monitor. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D122471
2021-08-13 12:13:48 +00:00
Dorel Luca f69a64ff07 Backed out changeset f29e3aea6a16 (bug 1724101) for multiple failures in Mutex_posix.cpp. CLOSED TREE 2021-08-12 20:40:30 +03:00
Henri Sivonen ed53e6bf55 Bug 1724101 - Protect nsHtml5StreamListener::mDelegate with a mutex. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D122471
2021-08-12 16:23:11 +00:00
Peter Van der Beken 37ab0970ed Bug 1721153 - Remove unused aListener and aMode arguments of nsIParser::Parse. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D120217
2021-08-12 14:11:38 +00:00
Henri Sivonen c037109d37 Bug 1724920 - Sort headers in the generated parts of the HTML parser. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D122225
2021-08-11 08:08:52 +00:00
Paul Bone 2ff6954e0f Bug 1718184 - pt 1. IdleTaskRunner now uses TimeDuration r=nika
Differential Revision: https://phabricator.services.mozilla.com/D118791
2021-07-13 01:42:32 +00:00
Henri Sivonen 7df7939f77 Bug 1713627 - Remove code obsoleted by the replacing the Text Encoding menu with one item. r=jaws,emk
Differential Revision: https://phabricator.services.mozilla.com/D116391
2021-06-21 12:09:01 +00:00
Dorel Luca 2118316ba4 Backed out changeset 4891a17c55e2 (bug 1713627) for Browser-chrome failures in docshell/test/browser/browser_bug673087-1.js. CLOSED TREE 2021-06-21 12:10:54 +03:00
Henri Sivonen abbbf94915 Bug 1713627 - Remove code obsoleted by the replacing the Text Encoding menu with one item. r=jaws,emk
Differential Revision: https://phabricator.services.mozilla.com/D116391
2021-06-21 08:09:43 +00:00
Jonathan Kew a74bd20f2b Bug 737785 - Un-prefix -moz-tab-size (keeping the prefixed version as an alias for now). r=layout-reviewers,dholbert
This results in lots of new WPT test passes.

There were also a couple of WPT tests that turned out to be broken;
tab-size-inline-001 and -002 had errors in their reference files such
that they'd never pass anywhere. So those are fixed here.

Depends on D117331

Differential Revision: https://phabricator.services.mozilla.com/D117332
2021-06-10 09:19:24 +00:00
Edgar Chen 1ebbd60592 Bug 1685421 - Part 2: Stop using NS_ERROR_DOM_HIERARCHY_REQUEST_ERR in nsINode; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D113344
2021-06-02 13:43:39 +00:00
Matt Woodrow c1f699cc3d Bug 1713489 - Record telemetry for how long we spend waiting on the main thread to process image preload network steps. r=bas,dragana,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D116318
2021-05-31 22:44:18 +00:00
Henri Sivonen 2cc5f863ce Bug 1712728 - Limit the encoding_detection_outcome_html and encoding_detection_outcome_text probes to HTTP status 200. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D115897
2021-05-26 04:19:12 +00:00
Valentin Gosu 5b981d7705 Bug 1694662 - Remove appcache logic from content sink r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D106440
2021-04-30 07:20:18 +00:00
Henri Sivonen 217757f82d Bug 829543 - Rename hintCharset to reloadEncoding and remove unnecessary code. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D113639
2021-04-28 12:15:47 +00:00
Henri Sivonen 29b3230825 Bug 1702248 - Limit encoding detection outcome telemetry to top level and to text/html and text/plain. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D110902
2021-04-07 06:05:57 +00:00
Simon Giesecke 760cc7e936 Bug 1679522 - Fix include directives and forward declarations. r=andi,necko-reviewers,jgilbert
- Add missing include directives and forward declarations.
- Remove some extra include directives.
- Add missing namespace qualifications.
- Move include directives out of namespace in toolkit/xre/GlobalSemaphore.h

Differential Revision: https://phabricator.services.mozilla.com/D98894
2021-03-25 10:19:44 +00:00
Henri Sivonen 8fa2981796 Bug 1547895 - Make nsHtml5Parser::Terminate() mark the parser as document.close()d. r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D109068
2021-03-24 13:30:52 +00:00
Simon Giesecke 71619f5f54 Bug 708901 - Migrate to nsTHashSet in parser. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D109333
2021-03-24 12:18:18 +00:00
Kershaw Chang 66f9604c86 Bug 1698073 - Extend ysod event telemetry to record the status of document r=zbraniecki
Differential Revision: https://phabricator.services.mozilla.com/D109484
2021-03-24 08:09:11 +00:00
Henri Sivonen b98488aa92 Bug 673087 - Honor encoding declared via XML declaration in text/html. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D107806
2021-03-23 09:52:04 +00:00
Nika Layzell c733984c4b Bug 1675820 - Part 6: Make DocGroup cycle-collected, r=farre,smaug
Previously, the DocGroup type was not cycle-collected, as it needed to have
references from other threads for Quantum DOM. Nowadays the only off-main-thread
use of DocGroup is for dispatching runnables to the main thread which should be
tracked using a performance counter for about:performance. This means we can
remove the DocGroup references from these dispatching callsites, only storing
the Performance Counter we're interested in, and simplify make DocGroup be
cycle-collected itself.

This fixes a leak caused by adding the WindowGlobalChild getter to
WindowContext, by allowing cycles between the document and its BrowsingContext
to be broken by the cycle-collector.

Differential Revision: https://phabricator.services.mozilla.com/D108865
2021-03-18 19:24:50 +00:00
Steve Fink 6e36aed705 Bug 1692308 - Add an initial delay to IdleTaskRunner r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D107504
2021-03-12 06:55:46 +00:00
Simon Giesecke ad01a10a3b Bug 1634281 - Use nsTHashMap instead of nsDataHashtable. r=xpcom-reviewers,necko-reviewers,jgilbert,nika,valentin
Note that this patch only transforms the use of the nsDataHashtable type alias
to a directly equivalent use of nsTHashMap. It does not change the specification
of the hash key type to make use of the key class deduction that nsTHashMap
allows for in some cases. That can be done in a separate step, but requires more
attention.

Differential Revision: https://phabricator.services.mozilla.com/D106008
2021-03-10 10:47:47 +00:00
Kagami Sascha Rosylight e9a7261412 Bug 1360715 - Part 3: Remove remaining cross-context instanceof from tests r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D106663
2021-03-04 22:03:58 +00:00
Brindusan Cristian b926d96be6 Backed out 3 changesets (bug 1360715) for mochitest failures at test_WebCrypto.html. CLOSED TREE
Backed out changeset b4a14c42313d (bug 1360715)
Backed out changeset 0e4b1b65fcbe (bug 1360715)
Backed out changeset fb8b9841d82b (bug 1360715)
2021-03-04 21:15:16 +02:00
Kagami Sascha Rosylight 7bec866ac5 Bug 1360715 - Part 3: Remove remaining cross-context instanceof from tests r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D106663
2021-03-04 15:05:27 +00:00
Simon Giesecke b5855b89fc Bug 1634281 - Remove unused nsDataHashtable.h includes. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D106007
2021-03-03 08:58:52 +00:00
Simon Giesecke 8ecfb38a41 Bug 1691913 - Remove uses of nsDataHashtable::GetValue. r=xpcom-reviewers,necko-reviewers,dragana,nika
GetValue is going to be removed in a subsequent patch. It is no longer needed,
because it can be replaced by functions already provided by nsBaseHashtable,
in particular Lookup and Contains.

Also, its name was confusing, since it specifically returns a pointer that
allows and is intended for modifying the entry within the hashtable, rather
than returning by-value. According to the naming rules to be set on
nsBaseHashtable, it would also needed to be renamed to "Lookup*. Removing
its uses saves this effort.

Differential Revision: https://phabricator.services.mozilla.com/D105476
2021-03-01 09:59:30 +00:00
Simon Giesecke 9af107a839 Bug 1691913 - Rename nsBaseHashtable::Put to InsertOrUpdate. r=xpcom-reviewers,necko-reviewers,jgilbert,dragana,nika
This makes the naming more consistent with other functions called
Insert and/or Update. Also, it removes the ambiguity whether
Put expects that an entry already exists or not, in particular because
it differed from nsTHashtable::PutEntry in that regard.

Differential Revision: https://phabricator.services.mozilla.com/D105473
2021-02-26 09:11:46 +00:00
Emilio Cobos Álvarez e7806ac06c Bug 1694202 - Avoid link preload header and the parser creating two preload requests for the same script. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D106022
2021-02-23 00:43:37 +00:00
Alexis Beingessner 07f2f659c6 Bug 1686616 - make StringBundle use Components instead of Services. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D105531
2021-02-18 13:26:32 +00:00
Gerald Squelart 2416d881e2 Bug 1691589 - Reduce reliance on GeckoProfiler.h when only labels (and maybe markers) are needed - r=necko-reviewers,geckoview-reviewers,sg,agi,florian
There are no code changes, only #include changes.
It was a fairly mechanical process: Search for all "AUTO_PROFILER_LABEL", and in each file, if only labels are used, convert "GeckoProfiler.h" into "ProfilerLabels.h" (or just add that last one where needed).
In some files, there were also some marker calls but no other profiler-related calls, in these cases "GeckoProfiler.h" was replaced with both "ProfilerLabels.h" and "ProfilerMarkers.h", which still helps in reducing the use of the all-encompassing "GeckoProfiler.h".

Differential Revision: https://phabricator.services.mozilla.com/D104588
2021-02-16 04:44:19 +00:00
Frederik Braun 9382d6d4e8 Bug 1691621 - fix bad cast r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D104501
2021-02-10 12:36:59 +00:00
Frederik Braun 66b19c3368 Bug 1690984 - Allow data, dialog, main, picture, and template in nsTreeSanitizer r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D104153
2021-02-05 12:34:58 +00:00
Emilio Cobos Álvarez d575f4cd3d Bug 1637651 - Don't trigger duplicate style link preloads for the same preload key. r=smaug
This is equivalent to the check in Document::MaybePreLoadImage, since
otherwise this code won't check the preload service at all. Without
this, we can trigger the assertion in PreloaderBase::NotifyOpen when we
have identical Link header and speculative link element preloads.

It's not a correctness nor perf issue, because the CSS loader will
coalesce the stylesheet load anyways, but it seems better to do this
than to remove the assertion, specially given images already do that.

The test-case in the following patch triggers the issue.

Depends on D103568

Differential Revision: https://phabricator.services.mozilla.com/D103569
2021-02-01 15:06:12 +00:00
Emilio Cobos Álvarez fe36177806 Bug 1637651 - Assume non-quirks mode for style Link header preloads. r=smaug
This is an issue I found while going through this code and
writing/debugging a test for the bug at hand. Without this, the test in
the actual fix for this bug will fail to actually reuse the preloaded
stylesheet.

It seems reasonable to assume that the intersection of quirks mode
documents using link preload headers is small (and in that case we'd
parse the sheet twice, but oh well).

Differential Revision: https://phabricator.services.mozilla.com/D103567
2021-02-01 23:23:50 +00:00
Emilio Cobos Álvarez e417f09f06 Bug 1598613 - Account for <link media=""> for speculative loads of stylesheet and preload links. r=hsivonen
<link media> applies to both <link rel="stylesheet"> (see
HTMLLinkElement::GetStyleSheetInfo) and all link rel="preload" links,
regardless of as value (see HTMLLinkElement::CheckPreloadAttrs), so pass it
down and check them for all of those cases.

Note that in the <link rel="stylesheet"> case we'd still have to load it, but
it doesn't block rendering and we defer its loading until more important
stylesheets are done (see SheetLoadData::ShouldDefer() which returns false if
the media attribute didn't match). So speculatively loading it seems
counter-productive.

Differential Revision: https://phabricator.services.mozilla.com/D103565
2021-02-01 08:03:57 +00:00
Emilio Cobos Álvarez b274d0d387 Bug 1680084 - Tests. r=freddyb
Differential Revision: https://phabricator.services.mozilla.com/D98745
2021-01-27 22:45:00 +00:00
Emilio Cobos Álvarez db7e961185 Bug 1598613 - Fix non-unified build in nsHtml5TreeOpExecutor.cpp. r=edgar
Just drive-by cleanup, no behavior change.

There's an using namespace mozilla, so also remove some useless
namespace qualifications while at it.

Depends on D103562

Differential Revision: https://phabricator.services.mozilla.com/D103563
2021-01-31 21:19:23 +00:00
Henri Sivonen 0ddb192035 Bug 1688368 - Check mFeedChardet before feeding the detector. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D102905
2021-01-27 10:36:39 +00:00
Henri Sivonen 9b210c311e Bug 1686463 - Gather telemetry about automatic encoding detection outcomes. r=chutten,emk
Differential Revision: https://phabricator.services.mozilla.com/D102397
2021-01-24 00:11:07 +00:00
Henri Sivonen 67b5ed77bf Bug 786797 - Check for integer overflow when computing new buffer sizes. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D102592
2021-01-21 17:02:58 +00:00
Henri Sivonen 058e02104c Bug 1648464 - Add an Autodetect item to the Text Encoding menu. r=emk,chutten,Gijs
Take a step towards replacing the encoding menu with a single menu item that
triggers the autodetection manually. However, don't remove anything for now.

* Add an autodetect item.
* Add telemetry for autodetect used in session.
* Add telemetry for non-autodetect used in session.
* Restore and revise telemetry for how the encoding that is being overridden
  was discovered.

Differential Revision: https://phabricator.services.mozilla.com/D81132
2021-01-14 07:06:53 +00:00
Henri Sivonen f0af8088e4 Bug 1647310 - Stop storing charset on cache entries. r=necko-reviewers,dragana
Storing the charset on cache entries makes the code path uselessly different
when loading from cache relative to uncached loads. Also, for future
telemetry purposes, caching the charset obscures its original source.

Differential Revision: https://phabricator.services.mozilla.com/D101570
2021-01-15 09:35:56 +00:00
Edgar Chen 303a7297a3 Bug 1685161 - Use consistent namespace in nsHtml5TreeBuilderCppSupplement.h; r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D100818
2021-01-11 13:27:31 +00:00
Razvan Maries 6565293451 Backed out changeset 8f99f3809630 (bug 1683220) for performance regression (bug 1684434). CLOSED TREE 2021-01-07 14:55:07 +02:00
Edgar Chen 030aaf9626 Bug 1489437 - Part 2: HTML parser should invoke custom element's callbacks before appending child nodes if it is not created for fragment; r=smaug
See https://github.com/whatwg/html/issues/4025.

Depends on D10226

Differential Revision: https://phabricator.services.mozilla.com/D10228
2021-01-05 21:40:26 +00:00
Edgar Chen 3a7902f2c4 Bug 1489437 - Part 1: Make HTML parser distinguish network, document.write and fragments in append operation; r=smaug,hsivonen
For custom element reaction invocation in the parser, we need a way to distinguish the tree appending operation is from fragments or not,
since we don't want to execute reactions until innerHTML finishes running.
(See spec changes https://github.com/whatwg/html/issues/4025)

We don't need to do anything for opAppendText and opAppendCommand since the text and command won't have any chance to
be a custom element.

Differential Revision: https://phabricator.services.mozilla.com/D10226
2021-01-06 09:29:41 +00:00
Kagami Sascha Rosylight 89ed474414 Bug 1685024 - Disable test_bug1646140-2 in headless mode r=mbrodesser
Differential Revision: https://phabricator.services.mozilla.com/D100776
2021-01-06 09:03:49 +00:00
Kagami Sascha Rosylight 3c4c9413c1 Bug 1664036 - Add tests for SVG onload r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D89383
2021-01-05 01:47:42 +00:00
Steve Fink fe76c7c194 Bug 1683220 - Remove nsJSContext::MaybeRunNextCollectorSlice entirely r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D96209
2020-12-21 17:23:26 +00:00
Simon Giesecke f8e7f4368b Bug 1680269 - Fix includes for nsHtml5StreamParser. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D98576
2020-12-07 14:21:43 +00:00
Simon Giesecke 1c53236b70 Bug 1679272 - Include ScopeExit.h exactly where used. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D98888
2020-12-07 14:25:59 +00:00
Simon Giesecke 5bfbb2a572 Bug 1673931 - Avoid including Document.h from header files. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D95046

Depends on D95045
2020-11-23 16:07:43 +00:00
Simon Giesecke 971b645fe3 Bug 1660470 - Add missing include directives/forward declarations. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D87865
2020-11-23 16:21:38 +00:00
Zibi Braniecki 4db97d1029 Bug 1677822 - Capture last line in the YSOD telemetry. r=peterv DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D97348
2020-11-18 20:29:41 +00:00
Ricky Stewart 02a7b4ebdf Bug 1654103: Standardize on Black for Python code in `mozilla-central`.
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.

To produce this patch I did all of the following:

1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.

2. Run ./mach lint --linter black --fix

3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.

4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.

5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94045
2020-10-26 18:34:53 +00:00
Bogdan Tara da1098d4aa Backed out 10 changesets (bug 1654103, bug 1672023, bug 1518999) for PanZoomControllerTest.touchEventForResult gv-junit failures CLOSED TREE
Backed out changeset ff3fb0b4a512 (bug 1672023)
Backed out changeset e7834b600201 (bug 1654103)
Backed out changeset 807893ca8069 (bug 1518999)
Backed out changeset 13e6b92440e9 (bug 1518999)
Backed out changeset 8b2ac5a6c98a (bug 1518999)
Backed out changeset 575748295752 (bug 1518999)
Backed out changeset 65f07ce7b39b (bug 1518999)
Backed out changeset 4bb80556158d (bug 1518999)
Backed out changeset 8ac8461d7bd7 (bug 1518999)
Backed out changeset e8ba13ee17f5 (bug 1518999)
2020-10-24 03:36:18 +03:00
Ricky Stewart c0cea3b0fa Bug 1654103: Standardize on Black for Python code in `mozilla-central`. r=remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers,devtools-backward-compat-reviewers,jgilbert,preferences-reviewers,sylvestre,maja_zf,webcompat-reviewers,denschub,ntim,whimboo,sparky
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.

To produce this patch I did all of the following:

1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.

2. Run ./mach lint --linter black --fix

3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.

4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.

5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94045
2020-10-23 20:40:42 +00:00
Henri Sivonen 4362f51641 Bug 1666300 part 2 - Parse into an inert document. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D93478
2020-10-23 12:48:52 +00:00
Razvan Maries b4044e05f9 Backed out 3 changesets (bug 1666300, bug 1667113) for perma failures on browser_parsable_css.js. CLOSED TREE
Backed out changeset 29c5257d0a06 (bug 1667113)
Backed out changeset 0f0fc78ad521 (bug 1666300)
Backed out changeset 9b0c50269ef7 (bug 1666300)
2020-10-22 14:04:15 +03:00
Henri Sivonen 8439bf4064 Bug 1666300 part 2 - Parse into an inert document. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D93478
2020-10-19 13:42:31 +00:00
Dorel Luca 1ff59cb7a3 Backed out changeset 7558c8821a07 (bug 1654103) for multiple failures. CLOSED TREE 2020-10-22 03:51:06 +03:00
Ricky Stewart 50762dacab Bug 1654103: Standardize on Black for Python code in `mozilla-central`. r=remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers,devtools-backward-compat-reviewers,jgilbert,preferences-reviewers,sylvestre,maja_zf,webcompat-reviewers,denschub,ntim,whimboo,sparky
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.

To produce this patch I did all of the following:

1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.

2. Run ./mach lint --linter black --fix

3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.

4. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94045
2020-10-21 21:27:27 +00:00
Emilio Cobos Álvarez f813f5248d Bug 1669664 - Don't speculatively load scripts, etc inside a template element. r=hsivonen
I guess in order to make this 100% sound we should check the whole
template mode stack, but that seemed more expensive than what I'd really
like, and I think it's not likely to be an issue in practice (maybe we
can too-eagerly preload some images inside tables inside templates, or
something of that sort?).

Differential Revision: https://phabricator.services.mozilla.com/D92773
2020-10-14 21:58:50 +00:00
Ricky Stewart 362abcf949 Bug 1670357 - Remove `make` targets for cleaning: `clean`, `realclean`, `clobber`, `distclean`, `clobber_all`, `everything` r=firefox-build-system-reviewers,mhentges
The `clobber` targets are superseded by `mach clobber`, so we don't need them for any reason. The `clean` target is meant to get you to a post-`configure` state, but it doesn't really work, and if it's necessary for you to be in that state for some reason you can just clobber and re-`configure`, so it doesn't seem worth it to get it working again. Instead, delete all of them. Also delete `everything` which is not useful when `clobber` doesn't exist.

Differential Revision: https://phabricator.services.mozilla.com/D93514
2020-10-15 20:37:18 +00:00
Henri Sivonen aeee6b217b Bug 1607762 - Make the refcount of nsHtml5OwningUTF16Buffer atomic. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D92936
2020-10-14 15:29:44 +00:00
Bogdan Tara f07a7512b9 Backed out changeset 0191bd914f91 (bug 1669664) for test_login_item.html failures a=backout 2020-10-09 00:01:18 +03:00
Emilio Cobos Álvarez 35ada269d3 Bug 1669664 - Don't speculatively load scripts, etc inside a template element. r=hsivonen
I guess in order to make this 100% sound we should check the whole
template mode stack, but that seemed more expensive than what I'd really
like, and I think it's not likely to be an issue in practice (maybe we
can too-eagerly preload some images inside tables inside templates, or
something of that sort?).

Differential Revision: https://phabricator.services.mozilla.com/D92773
2020-10-08 10:58:27 +00:00
Simon Giesecke de7bab0f06 Bug 1650145 - Replace all value uses of Empty[C]String by 0-length _ns literals. r=froydnj,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D82325
2020-09-23 15:17:15 +00:00
Makoto Kato c48e63ea6f Bug 1425291 - Part 2. Add autocapitalize attribute to htmlparser. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D86675
2020-09-15 14:26:14 +00:00
Henri Sivonen 76563e652c Bug 1606499 - Abort document on location.reload(). r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D89439
2020-09-10 14:37:16 +00:00
Henri Sivonen bb3eb9db34 Bug 1663921 - Make the speculative parser honor the non-xlink: versions of SVG href. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D89604
2020-09-10 11:37:07 +00:00
Gerald Squelart 5f9ff13253 Bug 1663543 - Convert PROFILER_ADD_MARKER and 2-arg profiler_add_marker to PROFILER_MARKER_UNTYPED - r=gregtatum
Mostly mechanical change, with some extra work where non-literal names are provided.
Also, when this is the only profiler call in a file, `#include "GeckoProfiler.h"` can be changed to `#include "mozilla/ProfilerMarkers.h"`.

Differential Revision: https://phabricator.services.mozilla.com/D89415
2020-09-10 03:02:36 +00:00
Kagami Sascha Rosylight 0f5ce0d9b6 Bug 1646140 - Fire SVG onload only when scripting is enabled r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D89218
2020-09-07 14:45:12 +00:00
Zibi Braniecki e32d8044f7 Bug 1661646 - Extend YSOD Telemetry with error_code and location. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D88535
2020-08-28 22:04:13 +00:00
Zibi Braniecki 535300fcb7 Bug 1657242 - Report telemetry for Yellow Screen of Death. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D85951
2020-08-10 17:38:00 +00:00
Simon Giesecke 1e02318b49 Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D83817
2020-08-07 07:49:47 +00:00
Simon Giesecke dea5b543db Bug 1653335 - Remove uses of MakeSpan in return statements. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D83812
2020-08-07 07:42:50 +00:00
Sean Feng 98f103468e Bug 1653474 - Update meta element related tests r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D84546
2020-08-05 16:27:22 +00:00
Sean Feng 75047f597c Bug 1653474 - Process META elements when it's inserted r=smaug
Unlike other engine vendors, we process meta elements
at parser, instead of when they are inserted. This
leads some web compact issues.

This patch aligns us with other vendors.

Differential Revision: https://phabricator.services.mozilla.com/D84545
2020-08-05 16:32:57 +00:00
Matt Brundage f8a95de9bc Bug 1650326 - Fix typo in error message about over-deep tree. DONTBUILD NPOTB r=alchen
Differential Revision: https://phabricator.services.mozilla.com/D82151
2020-08-03 11:09:33 +00:00
Mike Bremford f58ab49971 Bug 1650330 - Ensure every Locator is also a Locator2 (#10). DONTBUILD NPOTB r=alchen
* Replace org.xml.sax.helpers.LocatorImpl with nu.validator.htmlparser.impl.LocatorImpl

* instanceof before cast to Locator2

Differential Revision: https://phabricator.services.mozilla.com/D82153
2020-08-03 12:30:12 +00:00
Simon Pieters 8932345bb3 Bug 1650329 - Improve message: bad start tag in noscript in head. r=alchen
Differential Revision: https://phabricator.services.mozilla.com/D82152
2020-08-03 12:30:12 +00:00
Michael[tm] Smith 0793c41754 Bug 1650323 - Add suppress "unchecked" for a TreeBuilder method. DONTBUILD NPOTB r=alchen
In `nu.validator.htmlparser.impl.TreeBuilder`, this change adds
`@SuppressWarnings("unchecked")` to the `getUnusedStackNode()` method.

Differential Revision: https://phabricator.services.mozilla.com/D82149
2020-08-03 11:14:51 +00:00
Michael[tm] Smith 8399e9fd77 Bug 1650320 - Drop parse error for missing </caption> end tag. r=alchen
See https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-incaption:stack-of-open-elements-2
The parse error for this case was dropped from the spec in
https://github.com/whatwg/html/commit/759ee62

Relates to https://github.com/validator/validator/issues/593
and https://bugzilla.mozilla.org/show_bug.cgi?id=1429415

Differential Revision: https://phabricator.services.mozilla.com/D82146
2020-07-06 12:45:48 +00:00
Michael[tm] Smith 23655261b6 Bug 1650105 - Emit error (not warning) for HTML4/XHTML1 doctype. DONTBUILD NPOTB r=alchen
Since 2594493 HTML4/XHTML1
doctypes have caused the warning `Obsolete doctype. Expected <!DOCTYPE html>`.
This change makes that message an error rather than just a warning — bringing
the parser into conformance with whatwg/html@31c20af
(whatwg/html#2049).

Differential Revision: https://phabricator.services.mozilla.com/D82028
2020-07-06 12:45:18 +00:00
Michael[tm] Smith c53017c5a8 Bug 1650090 - Stop reporting HTML4-specific parse errors. DONTBUILD NPOTB r=alchen
Differential Revision: https://phabricator.services.mozilla.com/D82021
2020-08-03 11:03:02 +00:00