Bug 255800

Summary: Crash under MomentumEventDispatcher::displayDidRefresh()
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: ScrollingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: NEW ---    
Severity: Normal CC: simon.fraser, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Local Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=253543

Description Simon Fraser (smfr) 2023-04-21 11:48:52 PDT
Crash reporting shows that WebKitTestRunner can crash under MomentumEventDispatcher::displayDidRefresh() running various scrolling tests, because MomentumEventDispatcher is null here:

Thread 6 Crashed::  
0   com.apple.WebKit              	       0x14c138f9c WebKit::MomentumEventDispatcher::displayDidRefresh(unsigned int)
1   com.apple.WebKit              	       0x14ba63ec4 WebKit::RemoteLayerTreeEventDispatcher::didRefreshDisplay(unsigned int)
2   com.apple.WebKit              	       0x14ba6c488 WebKit::RemoteLayerTreeEventDispatcherDisplayLinkClient::displayLinkFired(unsigned int, WebCore::DisplayUpdate, bool, bool)::'lambda'()::operator()() const
3   com.apple.WebKit              	       0x14ba6c2cc WTF::Detail::CallableWrapper<WebKit::RemoteLayerTreeEventDispatcherDisplayLinkClient::displayLinkFired(unsigned int, WebCore::DisplayUpdate, bool, bool)::'lambda'(), void>::call()
4   com.apple.JavaScriptCore      	       0x119046934 WTF::Function<void ()>::operator()() const
5   com.apple.JavaScriptCore      	       0x116fd8370 WTF::RunLoop::performWork()
6   com.apple.JavaScriptCore      	       0x116fdc994 WTF::RunLoop::performWork(void*)
7   com.apple.CoreFoundation      	       0x182d86d14 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28 (/AppleInternal/Library/BuildRoots/2fa2494e-d6b7-11ed-97bc-4a062cfa165b/Library/Caches/com.apple.xbs/Sources/CoreFoundation/CoreFoundation/RunLoop.subproj/CFRunLoop.c:1957)
8   com.apple.CoreFoundation      	       0x182d86ca8 __CFRunLoopDoSource0 + 176 (/AppleInternal/Library/BuildRoots/2fa2494e-d6b7-11ed-97bc-4a062cfa165b/Library/Caches/com.apple.xbs/Sources/CoreFoundation/CoreFoundation/RunLoop.subproj/CFRunLoop.c:2001)
9   com.apple.CoreFoundation      	       0x182d86a18 __CFRunLoopDoSources0 + 244 (/AppleInternal/Library/BuildRoots/2fa2494e-d6b7-11ed-97bc-4a062cfa165b/Library/Caches/com.apple.xbs/Sources/CoreFoundation/CoreFoundation/RunLoop.subproj/CFRunLoop.c:2038)
10  com.apple.CoreFoundation      	       0x182d85620 __CFRunLoopRun + 828 (/AppleInternal/Library/BuildRoots/2fa2494e-d6b7-11ed-97bc-4a062cfa165b/Library/Caches/com.apple.xbs/Sources/CoreFoundation/CoreFoundation/RunLoop.subproj/CFRunLoop.c:2953)
11  com.apple.CoreFoundation      	       0x182d84c30 CFRunLoopRunSpecific + 600 (/AppleInternal/Library/BuildRoots/2fa2494e-d6b7-11ed-97bc-4a062cfa165b/Library/Caches/com.apple.xbs/Sources/CoreFoundation/CoreFoundation/RunLoop.subproj/CFRunLoop.c:3418)
12  com.apple.CoreFoundation      	       0x182e023e0 CFRunLoopRun + 64 (/AppleInternal/Library/BuildRoots/2fa2494e-d6b7-11ed-97bc-4a062cfa165b/Library/Caches/com.apple.xbs/Sources/CoreFoundation/CoreFoundation/RunLoop.subproj/CFRunLoop.c:3444)
13  com.apple.JavaScriptCore      	       0x116fdcf3c WTF::RunLoop::run()
14  com.apple.JavaScriptCore      	       0x116fda500 WTF::RunLoop::create(char const*, WTF::ThreadType, WTF::Thread::QOS)::$_1::operator()() const
15  com.apple.JavaScriptCore      	       0x116fda48c WTF::Detail::CallableWrapper<WTF::RunLoop::create(char const*, WTF::ThreadType, WTF::Thread::QOS)::$_1, void>::call()
16  com.apple.JavaScriptCore      	       0x119046934 WTF::Function<void ()>::operator()() const
17  com.apple.JavaScriptCore      	       0x117020fe4 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*)
18  com.apple.JavaScriptCore      	       0x11702d5b0 WTF::wtfThreadEntryPoint(void*)
Comment 1 Simon Fraser (smfr) 2023-04-21 11:49:29 PDT
<rdar://108105416>