⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 276398 in webkit


Ignore:
Timestamp:
Apr 21, 2021, 4:39:06 PM (5 years ago)
Author:
Alan Coon
Message:

Cherry-pick r274064. rdar://problem/76962988

REGRESSION(r272900): Nullptr crash in ComposedTreeIterator::traverseNextInShadowTree() via ShadowRoot::hostChildElementDidChange
https://bugs.webkit.org/show_bug.cgi?id=222720

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2021-03-08
Reviewed by Ryosuke Niwa.

Source/WebCore:

The list of assigned nodes contains weak pointers, we should check the node hasn't been destroyed.

Test: fast/html/details-set-inner-text-crash.html

  • dom/ComposedTreeIterator.cpp: (WebCore::ComposedTreeIterator::traverseNextInShadowTree):

LayoutTests:

  • fast/html/details-set-inner-text-crash-expected.txt: Added.
  • fast/html/details-set-inner-text-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274064 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Location:
branches/safari-611-branch
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-611-branch/LayoutTests/ChangeLog

    r276132 r276398  
     12021-04-21  Alan Coon  <alancoon@apple.com>
     2
     3        Cherry-pick r274064. rdar://problem/76962988
     4
     5    REGRESSION(r272900): Nullptr crash in ComposedTreeIterator::traverseNextInShadowTree() via ShadowRoot::hostChildElementDidChange
     6    https://bugs.webkit.org/show_bug.cgi?id=222720
     7   
     8    Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2021-03-08
     9    Reviewed by Ryosuke Niwa.
     10   
     11    Source/WebCore:
     12   
     13    The list of assigned nodes contains weak pointers, we should check the node hasn't been destroyed.
     14   
     15    Test: fast/html/details-set-inner-text-crash.html
     16   
     17    * dom/ComposedTreeIterator.cpp:
     18    (WebCore::ComposedTreeIterator::traverseNextInShadowTree):
     19   
     20    LayoutTests:
     21   
     22    * fast/html/details-set-inner-text-crash-expected.txt: Added.
     23    * fast/html/details-set-inner-text-crash.html: Added.
     24   
     25    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274064 268f45cc-cd09-0410-ab3c-d52691b4dbfc
     26
     27    2021-03-08  Carlos Garcia Campos  <cgarcia@igalia.com>
     28
     29            REGRESSION(r272900): Nullptr crash in ComposedTreeIterator::traverseNextInShadowTree() via ShadowRoot::hostChildElementDidChange
     30            https://bugs.webkit.org/show_bug.cgi?id=222720
     31
     32            Reviewed by Ryosuke Niwa.
     33
     34            * fast/html/details-set-inner-text-crash-expected.txt: Added.
     35            * fast/html/details-set-inner-text-crash.html: Added.
     36
    1372021-04-15  Russell Epstein  <repstein@apple.com>
    238
  • branches/safari-611-branch/Source/WebCore/ChangeLog

    r276158 r276398  
     12021-04-21  Alan Coon  <alancoon@apple.com>
     2
     3        Cherry-pick r274064. rdar://problem/76962988
     4
     5    REGRESSION(r272900): Nullptr crash in ComposedTreeIterator::traverseNextInShadowTree() via ShadowRoot::hostChildElementDidChange
     6    https://bugs.webkit.org/show_bug.cgi?id=222720
     7   
     8    Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2021-03-08
     9    Reviewed by Ryosuke Niwa.
     10   
     11    Source/WebCore:
     12   
     13    The list of assigned nodes contains weak pointers, we should check the node hasn't been destroyed.
     14   
     15    Test: fast/html/details-set-inner-text-crash.html
     16   
     17    * dom/ComposedTreeIterator.cpp:
     18    (WebCore::ComposedTreeIterator::traverseNextInShadowTree):
     19   
     20    LayoutTests:
     21   
     22    * fast/html/details-set-inner-text-crash-expected.txt: Added.
     23    * fast/html/details-set-inner-text-crash.html: Added.
     24   
     25    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274064 268f45cc-cd09-0410-ab3c-d52691b4dbfc
     26
     27    2021-03-08  Carlos Garcia Campos  <cgarcia@igalia.com>
     28
     29            REGRESSION(r272900): Nullptr crash in ComposedTreeIterator::traverseNextInShadowTree() via ShadowRoot::hostChildElementDidChange
     30            https://bugs.webkit.org/show_bug.cgi?id=222720
     31
     32            Reviewed by Ryosuke Niwa.
     33
     34            The list of assigned nodes contains weak pointers, we should check the node hasn't been destroyed.
     35
     36            Test: fast/html/details-set-inner-text-crash.html
     37
     38            * dom/ComposedTreeIterator.cpp:
     39            (WebCore::ComposedTreeIterator::traverseNextInShadowTree):
     40
    1412021-04-16  Russell Epstein  <repstein@apple.com>
    242
  • branches/safari-611-branch/Source/WebCore/dom/ComposedTreeIterator.cpp

    r266212 r276398  
    163163        auto& slot = downcast<HTMLSlotElement>(current());
    164164        if (auto* assignedNodes = slot.assignedNodes()) {
    165             context().slotNodeIndex = 0;
    166             auto* assignedNode = assignedNodes->at(0).get();
    167             m_contextStack.append(Context(*assignedNode->parentElement(), *assignedNode, Context::Slotted));
    168             return;
     165            if (auto assignedNode = assignedNodes->at(0)) {
     166                context().slotNodeIndex = 0;
     167                m_contextStack.append(Context(*assignedNode->parentElement(), *assignedNode, Context::Slotted));
     168                return;
     169            }
    169170        }
    170171    }
Note: See TracChangeset for help on using the changeset viewer.