Title: [277351] trunk/Source/WebKit
- Revision
- 277351
- Author
- [email protected]
- Date
- 2021-05-11 20:40:45 -0700 (Tue, 11 May 2021)
Log Message
Crash in DisplayLink::incrementFullSpeedRequestClientCount()
https://bugs.webkit.org/show_bug.cgi?id=225683
<rdar://77716330>
Reviewed by Tim Horton.
Crash data suggest that in WebPageProxy::updateWheelEventActivityAfterProcessSwap()
the connection might be null. Protect against that an an unset DisplayID, as we do
in wheelEventHysteresisUpdated().
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::updateWheelEventActivityAfterProcessSwap):
* UIProcess/mac/DisplayLink.cpp:
(WebKit::DisplayLink::incrementFullSpeedRequestClientCount): Remove an extra semicolon.
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (277350 => 277351)
--- trunk/Source/WebKit/ChangeLog 2021-05-12 02:45:51 UTC (rev 277350)
+++ trunk/Source/WebKit/ChangeLog 2021-05-12 03:40:45 UTC (rev 277351)
@@ -1,3 +1,20 @@
+2021-05-11 Simon Fraser <[email protected]>
+
+ Crash in DisplayLink::incrementFullSpeedRequestClientCount()
+ https://bugs.webkit.org/show_bug.cgi?id=225683
+ <rdar://77716330>
+
+ Reviewed by Tim Horton.
+
+ Crash data suggest that in WebPageProxy::updateWheelEventActivityAfterProcessSwap()
+ the connection might be null. Protect against that an an unset DisplayID, as we do
+ in wheelEventHysteresisUpdated().
+
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::updateWheelEventActivityAfterProcessSwap):
+ * UIProcess/mac/DisplayLink.cpp:
+ (WebKit::DisplayLink::incrementFullSpeedRequestClientCount): Remove an extra semicolon.
+
2021-05-11 Tim Horton <[email protected]>
Fix the CGDisplayListImageBufferBackend build
Modified: trunk/Source/WebKit/UIProcess/WebPageProxy.cpp (277350 => 277351)
--- trunk/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-05-12 02:45:51 UTC (rev 277350)
+++ trunk/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-05-12 03:40:45 UTC (rev 277351)
@@ -2782,6 +2782,9 @@
{
#if HAVE(CVDISPLAYLINK)
if (m_wheelEventActivityHysteresis.state() == PAL::HysteresisState::Started) {
+ if (!m_process->hasConnection() || !m_displayID)
+ return;
+
bool wantsFullSpeedUpdates = true;
process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, wantsFullSpeedUpdates);
}
Modified: trunk/Source/WebKit/UIProcess/mac/DisplayLink.cpp (277350 => 277351)
--- trunk/Source/WebKit/UIProcess/mac/DisplayLink.cpp 2021-05-12 02:45:51 UTC (rev 277350)
+++ trunk/Source/WebKit/UIProcess/mac/DisplayLink.cpp 2021-05-12 03:40:45 UTC (rev 277351)
@@ -160,7 +160,7 @@
auto& connectionInfo = m_observers.ensure(&connection, [] {
return ConnectionClientInfo { };
- }).iterator->value;;
+ }).iterator->value;
++connectionInfo.fullSpeedUpdatesClientCount;
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes