Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(316)

Issue 883123003: cc: Dirty the RenderSurfaceLayerList when taking copy requests. (Closed)

Created:
5 years, 10 months ago by danakj
Modified:
5 years, 10 months ago
Reviewers:
weiliangc, vmpstr
CC:
chromium-reviews, cc-bugs_chromium.org, enne (OOO), piman
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

cc: Dirty the RenderSurfaceLayerList when taking copy requests. When removing copy requests from a LayerImpl to fulfill the request, this changes the RenderSurfaceLayerList that CalculateDrawProperties would output. In particular, the layer would no longer keep itself as a render target. Since we fail to do this, the layer becomes !HasCopyRequest(), but keeps itself as a target in the RenderSurfaceLayerList. Then when we go to draw again (due to an animation or the like?) we skip appending the layer's RenderPass since the subtree is hidden, but the layer is still in the RenderSurfaceLayerList because we didn't recompute draw properties and the layer copy request was keeping the hidden layer in the list. This cognitive dissonance causes us to use a null RenderPass as the target_render_pass in CalculateRenderPasses, which causes a crash as soon as the (hidden) layer tries to append quads to the null surface. R=vmpstr, weiliangc@chromium.org BUG=439649 Committed: https://crrev.com/0cf9539d2a86d2a666d53c8e5154a8382a964370 Cr-Commit-Position: refs/heads/master@{#313733}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+111 lines, -0 lines) Patch
M cc/layers/layer_impl.cc View 1 chunk +1 line, -0 lines 0 comments Download
M cc/test/layer_tree_test.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/test/layer_tree_test.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_copyrequest.cc View 2 chunks +104 lines, -0 lines 0 comments Download

Messages

Total messages: 7 (1 generated)
danakj
5 years, 10 months ago (2015-01-29 01:31:31 UTC) #1
weiliangc
On 2015/01/29 01:31:31, danakj wrote: LGTM :D \o/
5 years, 10 months ago (2015-01-29 01:46:21 UTC) #2
vmpstr
lgtm
5 years, 10 months ago (2015-01-29 17:51:45 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/883123003/1
5 years, 10 months ago (2015-01-29 17:53:18 UTC) #5
commit-bot: I haz the power
Committed patchset #1 (id:1)
5 years, 10 months ago (2015-01-29 17:57:24 UTC) #6
commit-bot: I haz the power
5 years, 10 months ago (2015-01-29 17:58:10 UTC) #7
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/0cf9539d2a86d2a666d53c8e5154a8382a964370
Cr-Commit-Position: refs/heads/master@{#313733}

Powered by Google App Engine
This is Rietveld 408576698