Title: [152434] trunk/Source/WebCore
- Revision
- 152434
- Author
- [email protected]
- Date
- 2013-07-05 22:01:31 -0700 (Fri, 05 Jul 2013)
Log Message
Tons of crashes on bots after r152425
https://bugs.webkit.org/show_bug.cgi?id=118440
<rdar://problem/14366772>
Reviewed by Sam Weinig.
Null-check the frame's page and early return. It's OK to do this
because it only happens when we're being torn down.
* page/FrameView.cpp:
(WebCore::FrameView::minimumScrollPosition):
(WebCore::FrameView::maximumScrollPosition):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (152433 => 152434)
--- trunk/Source/WebCore/ChangeLog 2013-07-06 02:19:41 UTC (rev 152433)
+++ trunk/Source/WebCore/ChangeLog 2013-07-06 05:01:31 UTC (rev 152434)
@@ -1,5 +1,20 @@
2013-07-05 Tim Horton <[email protected]>
+ Tons of crashes on bots after r152425
+ https://bugs.webkit.org/show_bug.cgi?id=118440
+ <rdar://problem/14366772>
+
+ Reviewed by Sam Weinig.
+
+ Null-check the frame's page and early return. It's OK to do this
+ because it only happens when we're being torn down.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::minimumScrollPosition):
+ (WebCore::FrameView::maximumScrollPosition):
+
+2013-07-05 Tim Horton <[email protected]>
+
Fix r152265: FrameView's pagination mode is only one of two, and the logic was totally wrong
https://bugs.webkit.org/show_bug.cgi?id=118439
<rdar://problem/14366120>
Modified: trunk/Source/WebCore/page/FrameView.cpp (152433 => 152434)
--- trunk/Source/WebCore/page/FrameView.cpp 2013-07-06 02:19:41 UTC (rev 152433)
+++ trunk/Source/WebCore/page/FrameView.cpp 2013-07-06 05:01:31 UTC (rev 152434)
@@ -1642,7 +1642,10 @@
IntPoint FrameView::minimumScrollPosition() const
{
IntPoint minimumPosition(ScrollView::minimumScrollPosition());
-
+
+ if (!m_frame->page())
+ return minimumPosition;
+
if (m_frame == m_frame->page()->mainFrame() && m_scrollPinningBehavior == PinToBottom)
minimumPosition.setY(maximumScrollPosition().y());
@@ -1653,11 +1656,14 @@
{
IntPoint maximumOffset(contentsWidth() - visibleWidth() - scrollOrigin().x(), totalContentsSize().height() - visibleHeight() - scrollOrigin().y());
+ if (!m_frame->page())
+ return maximumOffset;
+
// With pagination enabled, we can have a negative maximum scroll position.
if ((m_frame->page()->pagination().mode == Pagination::Unpaginated && m_pagination.mode == Pagination::Unpaginated)
|| scrollOrigin() == IntPoint::zero())
maximumOffset.clampNegativeToZero();
-
+
if (m_frame == m_frame->page()->mainFrame() && m_scrollPinningBehavior == PinToTop)
maximumOffset.setY(minimumScrollPosition().y());
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes