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>
Created attachment 448610 [details] Patch v1.0
Comment on attachment 448610 [details] Patch v1.0 r=me nice :)
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].