Bug 39033

Summary: Composited plug-ins can cause missed painting
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: Layout and RenderingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, eric, webkit.review.bot
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
Attachments:
Description Flags
Patch
none
Patch hyatt: review+

Simon Fraser (smfr)
Reported 2010-05-12 16:57:08 PDT
If you load a page with Flash 10.1 in iframes, and then you bring that tab to the front, we assert and bail from FrameView::paintContents() here: ASSERT(!needsLayout()); if (needsLayout()) return; This is because the iframe-compositing code is doing a setNeedsStyleRecalc() on the root frame from inside the -viewWillDraw machinery, but after that root frame has done layout. So by the time it paints, we've marked it as needing layout.
Attachments
Patch (21.49 KB, patch)
2010-05-12 17:17 PDT, Simon Fraser (smfr)
no flags
Patch (21.62 KB, patch)
2010-05-12 18:23 PDT, Simon Fraser (smfr)
hyatt: review+
Simon Fraser (smfr)
Comment 1 2010-05-12 16:57:46 PDT
Simon Fraser (smfr)
Comment 2 2010-05-12 17:17:51 PDT
Simon Fraser (smfr)
Comment 3 2010-05-12 18:23:36 PDT
Dave Hyatt
Comment 4 2010-05-12 18:25:05 PDT
Comment on attachment 55923 [details] Patch r=me
Simon Fraser (smfr)
Comment 5 2010-05-12 20:38:38 PDT
WebKit Review Bot
Comment 6 2010-05-12 21:55:53 PDT
http://trac.webkit.org/changeset/59338 might have broken Leopard Intel Debug (Tests)
Note You need to log in before you can comment on or make changes to this bug.