Bug 212986 - REGRESSION (r261001): ASSERTION FAILED: m_clientCounts.contains(contextId) in WebKit::VideoFullscreenManagerProxy::removeClientForContext
Summary: REGRESSION (r261001): ASSERTION FAILED: m_clientCounts.contains(contextId) in...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Media (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Peng Liu
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2020-06-09 13:07 PDT by Ryan Haddad
Modified: 2020-07-06 15:25 PDT (History)
9 users (show)

See Also:


Attachments
crash log (106.61 KB, text/plain)
2020-06-09 13:07 PDT, Ryan Haddad
no flags Details
Patch (1.72 KB, patch)
2020-07-06 14:14 PDT, Peng Liu
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ryan Haddad 2020-06-09 13:07:34 PDT
Created attachment 401466 [details]
crash log

media/video-autoplay.html is frequently failing the assertion below on iOS Debug testers:

ASSERTION FAILED: m_clientCounts.contains(contextId)
/Volumes/Data/slave/ios-simulator-13-debug/build/Source/WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.mm(462) : void WebKit::VideoFullscreenManagerProxy::removeClientForContext(uint64_t)
1   0x10bfdf5a9 WTFCrash
2   0x11616a23b WTFCrashWithInfo(int, char const*, char const*, int)
3   0x116de171c WebKit::VideoFullscreenManagerProxy::removeClientForContext(unsigned long long)
4   0x116dde1d6 WebKit::VideoFullscreenManagerProxy::didCleanupFullscreen(unsigned long long)
5   0x116dde090 WebKit::VideoFullscreenModelContext::didCleanupFullscreen()
6   0x12ae25934 WebCore::VideoFullscreenInterfaceAVKit::cleanupFullscreen()
7   0x116de3ab1 WebKit::VideoFullscreenManagerProxy::cleanupFullscreen(unsigned long long)
8   0x117846890 void IPC::callMemberFunctionImpl<WebKit::VideoFullscreenManagerProxy, void (WebKit::VideoFullscreenManagerProxy::*)(unsigned long long), std::__1::tuple<unsigned long long>, 0ul>(WebKit::VideoFullscreenManagerProxy*, void (WebKit::VideoFullscreenManagerProxy::*)(unsigned long long), std::__1::tuple<unsigned long long>&&, std::__1::integer_sequence<unsigned long, 0ul>)
9   0x1178467d0 void IPC::callMemberFunction<WebKit::VideoFullscreenManagerProxy, void (WebKit::VideoFullscreenManagerProxy::*)(unsigned long long), std::__1::tuple<unsigned long long>, std::__1::integer_sequence<unsigned long, 0ul> >(std::__1::tuple<unsigned long long>&&, WebKit::VideoFullscreenManagerProxy*, void (WebKit::VideoFullscreenManagerProxy::*)(unsigned long long))
10  0x117841be6 void IPC::handleMessage<Messages::VideoFullscreenManagerProxy::CleanupFullscreen, WebKit::VideoFullscreenManagerProxy, void (WebKit::VideoFullscreenManagerProxy::*)(unsigned long long)>(IPC::Decoder&, WebKit::VideoFullscreenManagerProxy*, void (WebKit::VideoFullscreenManagerProxy::*)(unsigned long long))
11  0x117841510 WebKit::VideoFullscreenManagerProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&)
12  0x11627e361 IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::Decoder&)
13  0x116dc280e WebKit::AuxiliaryProcessProxy::dispatchMessage(IPC::Connection&, IPC::Decoder&)
14  0x116fbe4cf WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&)
15  0x1161dc99f IPC::Connection::dispatchMessage(IPC::Decoder&)
16  0x1161dd2d0 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)
17  0x1161dbbe1 IPC::Connection::dispatchIncomingMessages()
18  0x1161ff05f IPC::Connection::MessagesThrottler::scheduleMessagesDispatch()::$_10::operator()()
19  0x1161fef3e WTF::Detail::CallableWrapper<IPC::Connection::MessagesThrottler::scheduleMessagesDispatch()::$_10, void>::call()
20  0x10c00aca2 WTF::Function<void ()>::operator()() const
21  0x10c0841c8 WTF::RunLoop::performWork()
22  0x10c085971 WTF::RunLoop::performWork(void*)
23  0x112fb8c71 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
24  0x112fb8b9c __CFRunLoopDoSource0
25  0x112fb8374 __CFRunLoopDoSources0
26  0x112fb2f6e __CFRunLoopRun
27  0x112fb2884 CFRunLoopRunSpecific
28  0x11262b831 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
29  0x10b008c2e WTR::TestController::platformRunUntil(bool&, WTF::Seconds)
30  0x10afc525f WTR::TestController::runUntil(bool&, WTF::Seconds)
31  0x10b00ec5a WTR::TestInvocation::invoke()

https://results.webkit.org/?suite=layout-tests&test=media%2Fvideo-autoplay.html

https://build.webkit.org/results/Apple%20iOS%2013%20Simulator%20Debug%20WK2%20(Tests)/r262796%20(4090)/results.html
Comment 1 Radar WebKit Bug Importer 2020-06-09 13:07:58 PDT
<rdar://problem/64176481>
Comment 2 Ryan Haddad 2020-06-09 13:10:36 PDT
This regressed on or around 5/1/2020.

https://trac.webkit.org/changeset/261001/webkit seems to be the most likely candidate.
Comment 3 Peng Liu 2020-07-06 14:14:58 PDT
Created attachment 403620 [details]
Patch
Comment 4 EWS 2020-07-06 15:25:08 PDT
Committed r263991: <https://trac.webkit.org/changeset/263991>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403620 [details].