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

Changeset 288933 in webkit


Ignore:
Timestamp:
Feb 1, 2022, 5:41:26 PM (5 years ago)
Author:
Simon Fraser
Message:

Crash under ScrollingCoordinatorMac::hasNodeWithAnimatedScrollChanged()
​https://bugs.webkit.org/show_bug.cgi?id=235989
<rdar://87402941>

Reviewed by Wenson Hsieh.

Crash data suggest that m_scrollingCoordinator can be null in ThreadedScrollingTree::hasNodeWithAnimatedScrollChanged(),
which is true if the scrolling tree keeps ThreadedScrollingTree alive longer than the scrolling coordinator.

As in the other functions in this file, early return if m_scrollingCoordinator is null.

  • page/scrolling/ThreadedScrollingTree.cpp:

(WebCore::ThreadedScrollingTree::hasNodeWithAnimatedScrollChanged):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r288931 r288933  
     12022-02-01  Simon Fraser  <simon.fraser@apple.com>
     2
     3        Crash under ScrollingCoordinatorMac::hasNodeWithAnimatedScrollChanged()
     4        https://bugs.webkit.org/show_bug.cgi?id=235989
     5        <rdar://87402941>
     6
     7        Reviewed by Wenson Hsieh.
     8
     9        Crash data suggest that m_scrollingCoordinator can be null in ThreadedScrollingTree::hasNodeWithAnimatedScrollChanged(),
     10        which is true if the scrolling tree keeps ThreadedScrollingTree alive longer than the scrolling coordinator.
     11
     12        As in the other functions in this file, early return if m_scrollingCoordinator is null.
     13
     14        * page/scrolling/ThreadedScrollingTree.cpp:
     15        (WebCore::ThreadedScrollingTree::hasNodeWithAnimatedScrollChanged):
     16
    1172022-02-01  Pablo Saavedra  <psaavedra@igalia.com>
    218
  • trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp

    r287739 r288933  
    378378void ThreadedScrollingTree::hasNodeWithAnimatedScrollChanged(bool hasNodeWithAnimatedScroll)
    379379{
     380    if (!m_scrollingCoordinator)
     381        return;
     382
    380383    RunLoop::main().dispatch([scrollingCoordinator = m_scrollingCoordinator, hasNodeWithAnimatedScroll] {
    381384        scrollingCoordinator->hasNodeWithAnimatedScrollChanged(hasNodeWithAnimatedScroll);
Note: See TracChangeset for help on using the changeset viewer.