RESOLVED FIXED 79139
CCLayerTreeHostImpl calls didDraw more frequently than willDraw
https://bugs.webkit.org/show_bug.cgi?id=79139
Summary CCLayerTreeHostImpl calls didDraw more frequently than willDraw
Tim Dresser
Reported 2012-02-21 12:20:25 PST
In some contexts, CCLayerTreeHostImpl doesn't call willDraw, but does call didDraw. This results in crashes in CCVideoLayerImpl.
Attachments
Patch (2.58 KB, patch)
2012-02-21 12:43 PST, Tim Dresser
no flags
Patch (5.84 KB, patch)
2012-02-22 07:38 PST, Tim Dresser
no flags
Patch (5.83 KB, patch)
2012-02-22 11:50 PST, Tim Dresser
no flags
Tim Dresser
Comment 1 2012-02-21 12:43:22 PST
Adrienne Walker
Comment 2 2012-02-21 14:09:48 PST
Comment on attachment 128024 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=128024&action=review Can you add a unit test for a layer with an empty visibleLayerRect to make sure there's no mismatch between didDraw/willDraw? > Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:281 > + && !CCLayerTreeHostCommon::renderSurfaceContributesToTarget(*it, it.targetRenderSurfaceLayer()->id())) I think this conditional is redundant with it.representsItself().
James Robinson
Comment 3 2012-02-21 17:24:04 PST
Comment on attachment 128024 [details] Patch R- for the redundant check and lack of test. Otherwise I think this is fine.
Tim Dresser
Comment 4 2012-02-22 07:38:30 PST
James Robinson
Comment 5 2012-02-22 11:39:01 PST
Comment on attachment 128214 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=128214&action=review R=me > Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:280 > + if (it.representsItself() > + && !it->visibleLayerRect().isEmpty()) just put this on one line
Tim Dresser
Comment 6 2012-02-22 11:50:52 PST
WebKit Review Bot
Comment 7 2012-02-22 13:00:10 PST
Comment on attachment 128257 [details] Patch Clearing flags on attachment: 128257 Committed r108542: <http://trac.webkit.org/changeset/108542>
WebKit Review Bot
Comment 8 2012-02-22 13:00:17 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.