summaryrefslogtreecommitdiffstats
path: root/cc/resources
diff options
context:
space:
mode:
authorreveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-12 19:13:18 +0000
committerreveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-12 19:13:18 +0000
commit67fd9f011cb12e30350d432cd5de4348507f2386 (patch)
tree7f14abf8c7db945340c4c1f4a4a167e982105da0 /cc/resources
parent5dd02c746d4d418d24bf51d37314d65045a32b1d (diff)
downloadchromium_src-67fd9f011cb12e30350d432cd5de4348507f2386.zip
chromium_src-67fd9f011cb12e30350d432cd5de4348507f2386.tar.gz
chromium_src-67fd9f011cb12e30350d432cd5de4348507f2386.tar.bz2
cc: Fix memory assignment accounting problem causing incorrect tree activation.
Make sure |all_tiles_required_for_activation_have_memory_| is set correctly when some tiles are prevented from being assigned memory and added to |tiles_that_need_to_be_rasterized| as a result of oom for a higher priority tile. BUG=257601 Review URL: https://chromiumcodereview.appspot.com/18237003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211435 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/resources')
-rw-r--r--cc/resources/tile_manager.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/cc/resources/tile_manager.cc b/cc/resources/tile_manager.cc
index 960e4d3..6b71625 100644
--- a/cc/resources/tile_manager.cc
+++ b/cc/resources/tile_manager.cc
@@ -540,8 +540,11 @@ void TileManager::AssignGpuMemoryToTiles(
// 1. Tile size should not impact raster priority.
// 2. Tile with unreleasable memory could otherwise incorrectly
// be added as it's not affected by |bytes_allocatable|.
- if (higher_priority_tile_oomed)
+ if (higher_priority_tile_oomed) {
+ if (tile->required_for_activation())
+ all_tiles_required_for_activation_have_memory_ = false;
continue;
+ }
if (!tile_version.resource_)
tiles_that_need_to_be_rasterized->push_back(tile);