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

Issue 13939005: cc: Add strict layer property change checking and handle bounds changes during paint. (Closed)

Created:
7 years, 8 months ago by reveman
Modified:
7 years, 8 months ago
Reviewers:
danakj, jamesr, piman, enne (OOO)
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, cc-bugs_chromium.org, jam, apatrick_chromium
Visibility:
Public.

Description

cc: Add strict layer property change checking and handle bounds changes during paint. This fixes a problem where paint would cause layer bounds to change and Layer::PushProperties to push an non-empty picture layer without a recording to the impl side. This also adds a new command line switch that make layer property changes during paint cause a CHECK() to fail. This can be used to diagnose situations where paint is incorrectly causing layer properties to change. BUG=229179 TEST=cc_unittests --gtest_filter=LayerTreeHostTestChangeLayerPropertiesInPaintContents.RunSingleThread Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=194269

Patch Set 1 #

Total comments: 1

Patch Set 2 : Add PaintProperties #

Total comments: 2

Patch Set 3 : remove save_paint_properties #

Patch Set 4 : Add TODO #

Patch Set 5 : rebase #

Patch Set 6 : s/CHECK/DCHECK/ #

Unified diffs Side-by-side diffs Delta from patch set Stats (+228 lines, -13 lines) Patch
M cc/base/switches.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M cc/base/switches.cc View 1 2 3 4 1 chunk +4 lines, -0 lines 0 comments Download
M cc/cc.gyp View 1 1 chunk +1 line, -0 lines 0 comments Download
M cc/layers/contents_scaling_layer.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M cc/layers/layer.h View 1 5 chunks +9 lines, -0 lines 0 comments Download
M cc/layers/layer.cc View 1 2 3 4 5 34 chunks +54 lines, -5 lines 0 comments Download
A cc/layers/paint_properties.h View 1 1 chunk +21 lines, -0 lines 0 comments Download
M cc/layers/picture_layer.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M cc/layers/scrollbar_layer_unittest.cc View 1 3 chunks +6 lines, -0 lines 0 comments Download
M cc/layers/tiled_layer.cc View 1 1 chunk +4 lines, -2 lines 0 comments Download
M cc/layers/tiled_layer_unittest.cc View 1 31 chunks +36 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host.h View 3 chunks +6 lines, -1 line 0 comments Download
M cc/trees/layer_tree_host.cc View 1 4 chunks +7 lines, -2 lines 0 comments Download
M cc/trees/layer_tree_host_common.cc View 1 2 2 chunks +13 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_unittest.cc View 1 chunk +56 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_settings.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/trees/layer_tree_settings.cc View 1 chunk +2 lines, -1 line 0 comments Download
M cc/trees/tree_synchronizer_unittest.cc View 1 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/renderer_host/render_process_host_impl.cc View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/gpu/render_widget_compositor.cc View 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 15 (0 generated)
reveman
7 years, 8 months ago (2013-04-12 04:58:53 UTC) #1
danakj
https://codereview.chromium.org/13939005/diff/1/cc/layers/layer.cc File cc/layers/layer.cc (right): https://codereview.chromium.org/13939005/diff/1/cc/layers/layer.cc#newcode617 cc/layers/layer.cc:617: layer->SetBounds(last_bounds_); I think this is problematic because if the ...
7 years, 8 months ago (2013-04-12 16:44:39 UTC) #2
enne (OOO)
Can we fix this upstream in Blink and then just turn on this check unconditionally?
7 years, 8 months ago (2013-04-12 22:20:12 UTC) #3
danakj
On Fri, Apr 12, 2013 at 3:20 PM, <enne@chromium.org> wrote: > Can we fix this ...
7 years, 8 months ago (2013-04-12 22:25:52 UTC) #4
enne (OOO)
If plugins can abuse this then maybe we need to follow up with adding other ...
7 years, 8 months ago (2013-04-12 23:03:22 UTC) #5
reveman
https://codereview.chromium.org/13939005/diff/4001/cc/trees/layer_tree_host_common.cc File cc/trees/layer_tree_host_common.cc (right): https://codereview.chromium.org/13939005/diff/4001/cc/trees/layer_tree_host_common.cc#newcode1531 cc/trees/layer_tree_host_common.cc:1531: save_paint_properties); On 2013/04/12 23:03:22, enne wrote: > I don't ...
7 years, 8 months ago (2013-04-12 23:41:48 UTC) #6
reveman
+piman as this might need to be merged to M27 for android I'm avoiding to ...
7 years, 8 months ago (2013-04-13 01:26:59 UTC) #7
jamesr
lgtm We definitely should attempt to track down and fix as many of the Blink ...
7 years, 8 months ago (2013-04-15 17:31:59 UTC) #8
piman
Why CHECK+flag rather than DCHECK? This looks like a debugging aid, and not something we ...
7 years, 8 months ago (2013-04-15 17:34:55 UTC) #9
reveman
On 2013/04/15 17:34:55, piman wrote: > Why CHECK+flag rather than DCHECK? This looks like a ...
7 years, 8 months ago (2013-04-15 17:45:47 UTC) #10
reveman
On 2013/04/15 17:34:55, piman wrote: > Why CHECK+flag rather than DCHECK? this is way too ...
7 years, 8 months ago (2013-04-15 17:48:06 UTC) #11
piman
On Mon, Apr 15, 2013 at 10:45 AM, <reveman@chromium.org> wrote: > On 2013/04/15 17:34:55, piman ...
7 years, 8 months ago (2013-04-15 17:59:23 UTC) #12
jamesr
We need to have the fix and we need a way to figure out when ...
7 years, 8 months ago (2013-04-15 18:07:49 UTC) #13
reveman
Switch to DCHECK instead. When NPAPI is gone I'm hoping this flag can also go. ...
7 years, 8 months ago (2013-04-15 18:49:21 UTC) #14
reveman
7 years, 8 months ago (2013-04-16 01:12:06 UTC) #15
Message was sent while issue was closed.
Committed patchset #6 manually as r194269 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698