Bug 22985

Summary: RenderLayer cached clip rects are sometimes incorrect
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: Layout and RenderingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED FIXED    
Severity: Normal CC: hyatt
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Mac   
OS: OS X 10.5   
Attachments:
Description Flags
Patch, changelog hyatt: review+

Description Simon Fraser (smfr) 2008-12-24 13:59:59 PST
I added an assertion to test that cached clip rects are used with the same rootLayer as they were computed with. This caught a couple of problems, which I'll submit a patch for.
Comment 1 Simon Fraser (smfr) 2008-12-24 14:11:22 PST
Created attachment 26241 [details]
Patch, changelog

I wasn't able to easily create a LayoutTest to exercise these fixes, but the assertion provides testing.
Comment 2 Simon Fraser (smfr) 2008-12-24 14:13:22 PST
Also, did you know that clipRects are cleared on every mouse move, because MouseRelatedEvent::receivedTarget() calls layer->updateLayerPosition() before setting event->layerX and event->layerY (which are totally bogus anyway, bug 21868).
Comment 3 Dave Hyatt 2009-01-05 14:23:48 PST
Comment on attachment 26241 [details]
Patch, changelog

r=me.  If you can make a test case please do so.  If not, ok.
Comment 4 Simon Fraser (smfr) 2009-01-05 21:38:00 PST
Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebCore/ChangeLog
	M	WebCore/rendering/RenderLayer.cpp
	M	WebCore/rendering/RenderLayer.h
	M	WebCore/rendering/RenderTreeAsText.cpp
Committed r39640