[webkit-changes] [WebKit/WebKit] c155b3: Fast HTML parser fails to call beginParsingChildre...

Chris Dumez noreply at github.com
Thu Mar 23 18:02:41 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c155b303263dae13d8c472994fc7823ad728b155
      https://github.com/WebKit/WebKit/commit/c155b303263dae13d8c472994fc7823ad728b155
  Author: Chris Dumez <cdumez at apple.com>
  Date:   2023-03-23 (Thu, 23 Mar 2023)

  Changed paths:
    M Source/WebCore/dom/Document.h
    M Source/WebCore/html/FormController.h
    M Source/WebCore/html/HTMLDocument.h
    M Source/WebCore/html/parser/HTMLDocumentParserFastPath.cpp
    M Tools/TestWebKitAPI/Tests/WebCore/HTMLParserIdioms.cpp

  Log Message:
  -----------
  Fast HTML parser fails to call beginParsingChildren() / finishParsingChildren() on Elements it parses
https://bugs.webkit.org/show_bug.cgi?id=254361

Reviewed by Geoffrey Garen.

The fast HTML parser fails to call beginParsingChildren() / finishParsingChildren() on Elements
it parses, unlike the full HTML parser.

This causes some elements to think they're still parsing and leads to subtle breakage.
Chrome found some breakage when adding attachments to an email in Gmail.

This is a cherry-pick of the following Blink patches:
- https://chromium-review.googlesource.com/c/chromium/src/+/4307182
- https://chromium-review.googlesource.com/c/chromium/src/+/4316942

* Source/WebCore/dom/Document.h:
* Source/WebCore/html/FormController.h:
* Source/WebCore/html/HTMLDocument.h:
(WebCore::HTMLDocument::HTMLDocument):
* Source/WebCore/html/parser/HTMLDocumentParserFastPath.cpp:
(WebCore::HTMLFastPathParser::parseContainerElement):
(WebCore::HTMLFastPathParser::parseVoidElement):
(WebCore::canUseFastPath):
(WebCore::tryFastParsingHTMLFragmentImpl):
(WebCore::tryFastParsingHTMLFragment):
* Tools/TestWebKitAPI/Tests/WebCore/HTMLParserIdioms.cpp:
(TestWebKitAPI::TEST):

Canonical link: https://commits.webkit.org/262049@main




More information about the webkit-changes mailing list