Chromium Code Reviews| Index: cc/resources/tile_manager.cc |
| diff --git a/cc/resources/tile_manager.cc b/cc/resources/tile_manager.cc |
| index c8d1e80279ef397dc3bd3881734e0000c30bed9f..c99d03ae58316869d172323d9e6356102021409c 100644 |
| --- a/cc/resources/tile_manager.cc |
| +++ b/cc/resources/tile_manager.cc |
| @@ -25,7 +25,8 @@ namespace cc { |
| namespace { |
| // Memory limit policy works by mapping some bin states to the NEVER bin. |
| -const ManagedTileBin kBinPolicyMap[NUM_TILE_MEMORY_LIMIT_POLICIES][NUM_BINS] = { |
| +const ManagedTileBin |
| + kBinPolicyMap[MAX_TILE_MEMORY_LIMIT_POLICY + 1][MAX_BIN + 1] = { |
|
enne (OOO)
2013/08/23 00:44:38
Ugh.
I really don't like how awkward this makes e
|
| { // [ALLOW_NOTHING] |
| NEVER_BIN, // [NOW_AND_READY_TO_DRAW_BIN] |
| NEVER_BIN, // [NOW_BIN] |
| @@ -261,7 +262,7 @@ void TileManager::GetTilesWithAssignedBins(PrioritizedTileSet* tiles) { |
| Tile* tile = it->second; |
| ManagedTileState& mts = tile->managed_state(); |
| - TilePriority prio[NUM_BIN_PRIORITIES]; |
| + TilePriority prio[MAX_BIN_PRIORITY + 1]; |
| switch (tree_priority) { |
| case SAME_PRIORITY_FOR_BOTH_TREES: |
| prio[HIGH_PRIORITY_BIN] = prio[LOW_PRIORITY_BIN] = |
| @@ -320,7 +321,7 @@ void TileManager::GetTilesWithAssignedBins(PrioritizedTileSet* tiles) { |
| tile_is_active); |
| mts.tree_bin[PENDING_TREE] = kBinPolicyMap[memory_policy][pending_bin]; |
| - for (int i = 0; i < NUM_BIN_PRIORITIES; ++i) |
| + for (int i = 0; i <= MAX_BIN_PRIORITY; ++i) |
| mts.bin[i] = kBinPolicyMap[memory_policy][mts.bin[i]]; |
| mts.visible_and_ready_to_draw = |
| @@ -538,7 +539,7 @@ void TileManager::AssignGpuMemoryToTiles( |
| size_t tile_resources = 0; |
| // It costs to maintain a resource. |
| - for (int mode = 0; mode < NUM_RASTER_MODES; ++mode) { |
| + for (int mode = 0; mode <= MAX_RASTER_MODE; ++mode) { |
| if (mts.tile_versions[mode].resource_) { |
| tile_bytes += tile->bytes_consumed_if_allocated(); |
| tile_resources++; |
| @@ -656,7 +657,7 @@ void TileManager::FreeResourceForTile(Tile* tile, RasterMode mode) { |
| } |
| void TileManager::FreeResourcesForTile(Tile* tile) { |
| - for (int mode = 0; mode < NUM_RASTER_MODES; ++mode) { |
| + for (int mode = 0; mode <= MAX_RASTER_MODE; ++mode) { |
| FreeResourceForTile(tile, static_cast<RasterMode>(mode)); |
| } |
| } |
| @@ -665,14 +666,14 @@ void TileManager::FreeUnusedResourcesForTile(Tile* tile) { |
| DCHECK(tile->IsReadyToDraw()); |
| ManagedTileState& mts = tile->managed_state(); |
| RasterMode used_mode = HIGH_QUALITY_NO_LCD_RASTER_MODE; |
| - for (int mode = 0; mode < NUM_RASTER_MODES; ++mode) { |
| + for (int mode = 0; mode < MAX_RASTER_MODE; ++mode) { |
| if (mts.tile_versions[mode].IsReadyToDraw()) { |
| used_mode = static_cast<RasterMode>(mode); |
| break; |
| } |
| } |
| - for (int mode = 0; mode < NUM_RASTER_MODES; ++mode) { |
| + for (int mode = 0; mode < MAX_RASTER_MODE; ++mode) { |
| if (mode != used_mode) |
| FreeResourceForTile(tile, static_cast<RasterMode>(mode)); |
| } |