Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 791e55b6738d6cf322148abc8c15fb39a61527cd
https://github.com/WebKit/WebKit/commit/791e55b6738d6cf322148abc8c15fb39a61527cd
Author: Charlie Wolfe <[email protected]>
Date: 2023-09-18 (Mon, 18 Sep 2023)
Changed paths:
M Source/WebKit/Shared/NativeWebGestureEvent.h
M Source/WebKit/Shared/WebEvent.cpp
M Source/WebKit/Shared/WebEvent.h
M Source/WebKit/Shared/WebEvent.serialization.in
M Source/WebKit/Shared/WebEventType.h
M Source/WebKit/Shared/WebKeyboardEvent.cpp
M Source/WebKit/Shared/WebKeyboardEvent.h
M Source/WebKit/Shared/WebMouseEvent.cpp
M Source/WebKit/Shared/WebMouseEvent.h
M Source/WebKit/Shared/WebTouchEvent.h
M Source/WebKit/Shared/WebWheelEvent.h
M Source/WebKit/Shared/gtk/WebEventFactory.cpp
M Source/WebKit/Shared/libwpe/WebEventFactory.cpp
M Source/WebKit/Shared/mac/NativeWebGestureEventMac.mm
M Source/WebKit/Shared/mac/WebGestureEvent.h
M Source/WebKit/UIProcess/RemotePageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/WebPageProxy.messages.in
M Source/WebKit/UIProcess/ios/WKMouseInteraction.mm
M Source/WebKit/UIProcess/mac/WebViewImpl.mm
M Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.h
M Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm
M Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp
M Source/WebKit/WebProcess/WebPage/EventDispatcher.h
M Source/WebKit/WebProcess/WebPage/EventDispatcher.messages.in
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Source/WebKit/WebProcess/WebPage/WebPage.h
M Source/WebKit/WebProcess/WebPage/WebPage.messages.in
Log Message:
-----------
REGRESSION(267849@main): ASSERTION FAILED: m_inDispatchMessageCount > 0
https://bugs.webkit.org/show_bug.cgi?id=261660
rdar://115635276
Reviewed by Alex Christensen.
After 267849@main, if the web process crashes while an event is being handled a
debug assertion will
fail in `Connection::markCurrentlyDispatchedMessageAsInvalid()`. To fix this,
make `WebEventType` in
the completion handler optional so that the completion handler call for a
crashed web process will
do nothing. Also remove `WebEventType::NoType` and replace it with
`std::nullopt`.
* Source/WebKit/Shared/NativeWebGestureEvent.h:
* Source/WebKit/Shared/WebEvent.cpp:
(WebKit::operator<<):
* Source/WebKit/Shared/WebEvent.h:
* Source/WebKit/Shared/WebEvent.serialization.in:
* Source/WebKit/Shared/WebEventType.h:
* Source/WebKit/Shared/WebKeyboardEvent.cpp:
* Source/WebKit/Shared/WebKeyboardEvent.h:
* Source/WebKit/Shared/WebMouseEvent.cpp:
* Source/WebKit/Shared/WebMouseEvent.h:
* Source/WebKit/Shared/WebTouchEvent.h:
* Source/WebKit/Shared/WebWheelEvent.h:
* Source/WebKit/Shared/gtk/WebEventFactory.cpp:
(WebKit::WebEventFactory::createWebMouseEvent):
(WebKit::WebEventFactory::createWebTouchEvent):
* Source/WebKit/Shared/libwpe/WebEventFactory.cpp:
(WebKit::WebEventFactory::createWebMouseEvent):
(WebKit::WebEventFactory::createWebTouchEvent):
* Source/WebKit/Shared/mac/NativeWebGestureEventMac.mm:
(WebKit::webEventTypeForNSEvent):
(WebKit::NativeWebGestureEvent::create):
(WebKit::NativeWebGestureEvent::NativeWebGestureEvent):
* Source/WebKit/Shared/mac/WebGestureEvent.h:
* Source/WebKit/UIProcess/RemotePageProxy.cpp:
(WebKit::RemotePageProxy::sendMouseEvent):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setInitialFocus):
(WebKit::WebPageProxy::sendMouseEvent):
(WebKit::WebPageProxy::processNextQueuedMouseEvent):
(WebKit::WebPageProxy::handleKeyboardEvent):
(WebKit::WebPageProxy::handleGestureEvent):
(WebKit::WebPageProxy::handleTouchEvent):
(WebKit::WebPageProxy::didReceiveEvent):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.messages.in:
* Source/WebKit/UIProcess/ios/WKMouseInteraction.mm:
(-[WKMouseInteraction createMouseEventWithType:wasCancelled:]):
(-[WKMouseInteraction _hoverGestureRecognized:]):
(-[WKMouseInteraction _updateMouseTouches:]):
* Source/WebKit/UIProcess/mac/WebViewImpl.mm:
(WebKit::WebViewImpl::magnifyWithEvent):
(WebKit::WebViewImpl::rotateWithEvent):
* Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.h:
* Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::handleKeyboardEvent):
(WebKit::PDFPlugin::clickedLink):
* Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::gestureEvent):
(WebKit::EventDispatcher::dispatchGestureEvent):
* Source/WebKit/WebProcess/WebPage/EventDispatcher.h:
* Source/WebKit/WebProcess/WebPage/EventDispatcher.messages.in:
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::mouseEvent):
(WebKit::WebPage::keyEvent):
(WebKit::WebPage::touchEvent):
(WebKit::WebPage::gestureEvent):
(WebKit::WebPage::setInitialFocus):
* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Source/WebKit/WebProcess/WebPage/WebPage.messages.in:
Canonical link: https://commits.webkit.org/268095@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes