calculateRenderPasses calls willDraw() on every layer and unless drawLayers is then called, there's a missing didDraw() pair. This causes problems for video layers that want to lock and release resources during these two function calls.
Created attachment 138696 [details] Patch
Comment on attachment 138696 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=138696&action=review Much better R=me > Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:266 > + ASSERT(passes.isEmpty()); can we make passes a local variable again and just have the renderSurfaceLayerList be a member variable, or is that teh crazy?
(In reply to comment #2) > (From update of attachment 138696 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=138696&action=review > > Much better R=me > > > Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:266 > > + ASSERT(passes.isEmpty()); > > can we make passes a local variable again and just have the renderSurfaceLayerList be a member variable, or is that teh crazy? Sadly, I think that'd be a larger refactoring, although it might be worthwhile to investigate it.
Comment on attachment 138696 [details] Patch Clearing flags on attachment: 138696 Committed r115162: <http://trac.webkit.org/changeset/115162>
All reviewed patches have been landed. Closing bug.