Bug 234968 - REGRESSION(r286498): Web Inspector: Inspector^2 fails to load in release builds and crashes with an assertion in debug builds
Summary: REGRESSION(r286498): Web Inspector: Inspector^2 fails to load in release buil...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Web Inspector (show other bugs)
Version: WebKit Nightly Build
Hardware: All All
: P2 Normal
Assignee: Patrick Angle
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2022-01-07 10:41 PST by Patrick Angle
Modified: 2022-01-07 14:48 PST (History)
6 users (show)

See Also:


Attachments
Patch v1.0 (2.70 KB, patch)
2022-01-07 10:59 PST, Patrick Angle
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick Angle 2022-01-07 10:41:02 PST
Steps to reproduce:
1. Enable Inspector^2
2. Right click in inspector and choose Inspect Element.
3a. A debug build will crash here.
3b. A release build will show an inspector window with no title, and with no information in it (e.g. sources, elements, etc.)

For debug builds, the assertion/crash is:
ASSERTION FAILED: destinationID
Source/WebKit/Platform/IPC/MessageReceiverMap.cpp(52) : void IPC::MessageReceiverMap::addMessageReceiver(IPC::ReceiverName, uint64_t, IPC::MessageReceiver &)
1   0x10f082cc9 WTFCrash
2   0x12abafddb WTFCrashWithInfo(int, char const*, char const*, int)
3   0x12bff4ed6 IPC::MessageReceiverMap::addMessageReceiver(IPC::ReceiverName, unsigned long long, IPC::MessageReceiver&)
4   0x12c3ef358 WebKit::AuxiliaryProcessProxy::addMessageReceiver(IPC::ReceiverName, unsigned long long, IPC::MessageReceiver&)
5   0x12c8c29c7 void WebKit::AuxiliaryProcessProxy::addMessageReceiver<WebKit::WebPageProxyIdentifierType>(IPC::ReceiverName, WTF::ObjectIdentifier<WebKit::WebPageProxyIdentifierType>, IPC::MessageReceiver&)
6   0x12c8c148a WebKit::WebInspectorUIProxy::createFrontendPage()
7   0x12c8c2a79 WebKit::WebInspectorUIProxy::openLocalInspectorFrontend(bool, bool)
8   0x12d0d9f9e void IPC::callMemberFunctionImpl<WebKit::WebInspectorUIProxy, void (WebKit::WebInspectorUIProxy::*)(bool, bool), std::__1::tuple<bool, bool>, 0ul, 1ul>(WebKit::WebInspectorUIProxy*, void (WebKit::WebInspectorUIProxy::*)(bool, bool), std::__1::tuple<bool, bool>&&, std::__1::integer_sequence<unsigned long, 0ul, 1ul>)
9   0x12d0d9ecd void IPC::callMemberFunction<WebKit::WebInspectorUIProxy, void (WebKit::WebInspectorUIProxy::*)(bool, bool), std::__1::tuple<bool, bool>, std::__1::integer_sequence<unsigned long, 0ul, 1ul> >(std::__1::tuple<bool, bool>&&, WebKit::WebInspectorUIProxy*, void (WebKit::WebInspectorUIProxy::*)(bool, bool))
10  0x12d0d87e9 void IPC::handleMessage<Messages::WebInspectorUIProxy::OpenLocalInspectorFrontend, WebKit::WebInspectorUIProxy, void (WebKit::WebInspectorUIProxy::*)(bool, bool)>(IPC::Connection&, IPC::Decoder&, WebKit::WebInspectorUIProxy*, void (WebKit::WebInspectorUIProxy::*)(bool, bool))
11  0x12d0d7b32 WebKit::WebInspectorUIProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&)
12  0x12bff67a3 IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::Decoder&)
13  0x12c3ef3fc WebKit::AuxiliaryProcessProxy::dispatchMessage(IPC::Connection&, IPC::Decoder&)
14  0x12c68b8c9 WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&)
15  0x12bfb6b5e IPC::Connection::dispatchMessage(IPC::Decoder&)
16  0x12bfb72c5 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)
17  0x12bfb5c3c IPC::Connection::dispatchIncomingMessages()
18  0x12bfd34ef IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_14::operator()()
19  0x12bfd3419 WTF::Detail::CallableWrapper<IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_14, void>::call()
20  0x10f0aca22 WTF::Function<void ()>::operator()() const
21  0x10f1305ae WTF::RunLoop::performWork()
22  0x10f133e7e WTF::RunLoop::performWork(void*)
23  0x7ff80284ff4b __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
24  0x7ff80284feb3 __CFRunLoopDoSource0
25  0x7ff80284fc2d __CFRunLoopDoSources0
26  0x7ff80284e648 __CFRunLoopRun
27  0x7ff80284dc0c CFRunLoopRunSpecific
28  0x7ff80b540906 RunCurrentEventLoopInMode
29  0x7ff80b54066a ReceiveNextEventCommon
30  0x7ff80b540405 _BlockUntilNextEventMatchingListInModeWithFilter
31  0x7ff8052609c5 _DPSNextEvent

<rdar://86782432>
Comment 1 Patrick Angle 2022-01-07 10:59:31 PST
Created attachment 448610 [details]
Patch v1.0
Comment 2 Devin Rousso 2022-01-07 11:03:19 PST
Comment on attachment 448610 [details]
Patch v1.0

r=me nice :)
Comment 3 EWS 2022-01-07 14:48:02 PST
Committed r287786 (245846@main): <https://commits.webkit.org/245846@main>

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