summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Mineer <amineer@chromium.org>2016-03-18 14:08:40 -0700
committerAlex Mineer <amineer@chromium.org>2016-03-18 21:10:51 +0000
commitc25b3f9fd96e6cb7fa82e6e0e1756077055b5564 (patch)
treea4259626e64c6afc89ce316101f858e9b3075b00
parent58cef5be289f5004932682c17694aaa7724bae70 (diff)
downloadchromium_src-c25b3f9fd96e6cb7fa82e6e0e1756077055b5564.zip
chromium_src-c25b3f9fd96e6cb7fa82e6e0e1756077055b5564.tar.gz
chromium_src-c25b3f9fd96e6cb7fa82e6e0e1756077055b5564.tar.bz2
cc: Ensure to process active low res pending high res tilings at raster
This patch ensures that we process active low res pending high res tilings, since they can have required for activation tiles. Previously, this only applied to non ideal tiles, but clearly it's possible to hit the rare case of low res on active while high res on pending. R=enne, chrishtr BUG=595209 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1808043002 (cherry picked from commit ad3070d0f8f9b7513222014d218d0937da6d8077) Cr-Original-Commit-Position: refs/heads/master@{#381613} Cr-Commit-Position: refs/branch-heads/2623@{#638} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
-rw-r--r--cc/tiles/tiling_set_raster_queue_all.cc10
1 files changed, 5 insertions, 5 deletions
diff --git a/cc/tiles/tiling_set_raster_queue_all.cc b/cc/tiles/tiling_set_raster_queue_all.cc
index 1ed618a..ec5e413 100644
--- a/cc/tiles/tiling_set_raster_queue_all.cc
+++ b/cc/tiles/tiling_set_raster_queue_all.cc
@@ -35,10 +35,10 @@ TilingSetRasterQueueAll::TilingSetRasterQueueAll(
// Find high and low res tilings and initialize the iterators.
PictureLayerTiling* high_res_tiling = nullptr;
PictureLayerTiling* low_res_tiling = nullptr;
- // This variable would point to a tiling that has a NON_IDEAL_RESOLUTION
- // resolution on the active tree, but HIGH_RESOLUTION on the pending tree.
- // These tilings are the only non-ideal tilings that could have required for
- // activation tiles, so they need to be considered for rasterization.
+ // This variable would point to a tiling that has a NON_IDEAL_RESOLUTION or
+ // LOW_RESOLUTION on the active tree, but HIGH_RESOLUTION on the pending tree.
+ // These tilings are the only non-high res tilings that could have required
+ // for activation tiles, so they need to be considered for rasterization.
PictureLayerTiling* active_non_ideal_pending_high_res_tiling = nullptr;
for (size_t i = 0; i < tiling_set_->num_tilings(); ++i) {
PictureLayerTiling* tiling = tiling_set_->tiling_at(i);
@@ -46,7 +46,7 @@ TilingSetRasterQueueAll::TilingSetRasterQueueAll(
high_res_tiling = tiling;
if (prioritize_low_res && tiling->resolution() == LOW_RESOLUTION)
low_res_tiling = tiling;
- if (tree == ACTIVE_TREE && tiling->resolution() == NON_IDEAL_RESOLUTION) {
+ if (tree == ACTIVE_TREE && tiling->resolution() != HIGH_RESOLUTION) {
const PictureLayerTiling* twin =
client->GetPendingOrActiveTwinTiling(tiling);
if (twin && twin->resolution() == HIGH_RESOLUTION)