Title: [262825] trunk/Source/WebCore
- Revision
- 262825
- Author
- [email protected]
- Date
- 2020-06-09 16:32:04 -0700 (Tue, 09 Jun 2020)
Log Message
Logging and tree dumping crash fix
https://bugs.webkit.org/show_bug.cgi?id=212988
Reviewed by Zalan Bujtas.
Add scrolling logging to RenderLayer::requestScrollPositionUpdate().
Null-check the scrollerImp in ScrollbarThemeMac::isLayoutDirectionRTL, because this is
called from renderTreeAsText() which can be invoked from the debugger, and should not crash.
* platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::isLayoutDirectionRTL):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::requestScrollPositionUpdate):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (262824 => 262825)
--- trunk/Source/WebCore/ChangeLog 2020-06-09 23:27:57 UTC (rev 262824)
+++ trunk/Source/WebCore/ChangeLog 2020-06-09 23:32:04 UTC (rev 262825)
@@ -1,3 +1,20 @@
+2020-06-09 Simon Fraser <[email protected]>
+
+ Logging and tree dumping crash fix
+ https://bugs.webkit.org/show_bug.cgi?id=212988
+
+ Reviewed by Zalan Bujtas.
+
+ Add scrolling logging to RenderLayer::requestScrollPositionUpdate().
+
+ Null-check the scrollerImp in ScrollbarThemeMac::isLayoutDirectionRTL, because this is
+ called from renderTreeAsText() which can be invoked from the debugger, and should not crash.
+
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::isLayoutDirectionRTL):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::requestScrollPositionUpdate):
+
2020-06-09 Andy Estes <[email protected]>
Unreviewed change for post-commit feedback after r262682.
Modified: trunk/Source/WebCore/platform/mac/ScrollbarThemeMac.mm (262824 => 262825)
--- trunk/Source/WebCore/platform/mac/ScrollbarThemeMac.mm 2020-06-09 23:27:57 UTC (rev 262824)
+++ trunk/Source/WebCore/platform/mac/ScrollbarThemeMac.mm 2020-06-09 23:32:04 UTC (rev 262825)
@@ -199,7 +199,8 @@
{
#if PLATFORM(MAC)
NSScrollerImp *scrollerImp = painterForScrollbar(scrollbar);
- ASSERT(scrollerImp);
+ if (!scrollerImp)
+ return false;
return scrollerImp.userInterfaceLayoutDirection == NSUserInterfaceLayoutDirectionRightToLeft;
#else
UNUSED_PARAM(scrollbar);
Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (262824 => 262825)
--- trunk/Source/WebCore/rendering/RenderLayer.cpp 2020-06-09 23:27:57 UTC (rev 262824)
+++ trunk/Source/WebCore/rendering/RenderLayer.cpp 2020-06-09 23:32:04 UTC (rev 262825)
@@ -2588,6 +2588,8 @@
bool RenderLayer::requestScrollPositionUpdate(const ScrollPosition& position, ScrollType scrollType, ScrollClamping clamping)
{
#if ENABLE(ASYNC_SCROLLING)
+ LOG_WITH_STREAM(Scrolling, stream << *this << " requestScrollPositionUpdate " << position);
+
if (ScrollingCoordinator* scrollingCoordinator = page().scrollingCoordinator())
return scrollingCoordinator->requestScrollPositionUpdate(*this, position, scrollType, clamping);
#endif
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes