<rdar://problem/10098679> Assertion failure in RenderLayer::paintPaginatedChildLayer()
authormitz@apple.com <mitz@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 27 Sep 2011 21:04:04 +0000 (21:04 +0000)
committermitz@apple.com <mitz@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 27 Sep 2011 21:04:04 +0000 (21:04 +0000)
commitd60c028f6f48987bdf6e8378ca0d2d286cd5fc1b
treeb4febf0dbd3231f91e93001075d49a7e2c74d9e5
parente54a543c459b0483c268a8b2f3d156346690dfa0
<rdar://problem/10098679> Assertion failure in RenderLayer::paintPaginatedChildLayer()

Reviewed by Simon Fraser.

Source/WebCore:

Test: fast/dynamic/layer-no-longer-paginated.html

FrameView::layout() calls adjustViewSize() before calling RenderLayer::updateLayerPositions().
The former may trigger painting with a layer tree that is not entirely up-to-date. Specifically,
the isPaginated() state of a layer may be incorrect, leading to the assertion in this bug. Instead
of asserting, return early and count on the upcoming updateLayerPositions() to repaint as needed.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintPaginatedChildLayer): Replaced the assertion with an early return.

LayoutTests:

* fast/dynamic/layer-no-longer-paginated-expected.txt: Added.
* fast/dynamic/layer-no-longer-paginated.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96154 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/fast/dynamic/layer-no-longer-paginated-expected.txt [new file with mode: 0644]
LayoutTests/fast/dynamic/layer-no-longer-paginated.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/rendering/RenderLayer.cpp