diff options
author | reveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-12 19:13:18 +0000 |
---|---|---|
committer | reveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-12 19:13:18 +0000 |
commit | 67fd9f011cb12e30350d432cd5de4348507f2386 (patch) | |
tree | 7f14abf8c7db945340c4c1f4a4a167e982105da0 /cc/resources | |
parent | 5dd02c746d4d418d24bf51d37314d65045a32b1d (diff) | |
download | chromium_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.cc | 5 |
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); |