In some contexts, CCLayerTreeHostImpl doesn't call willDraw, but does call didDraw. This results in crashes in CCVideoLayerImpl.
Created attachment 128024 [details] Patch
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().
Comment on attachment 128024 [details] Patch R- for the redundant check and lack of test. Otherwise I think this is fine.
Created attachment 128214 [details] Patch
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
Created attachment 128257 [details] Patch
Comment on attachment 128257 [details] Patch Clearing flags on attachment: 128257 Committed r108542: <http://trac.webkit.org/changeset/108542>
All reviewed patches have been landed. Closing bug.