Commit d673ee5f authored by vmpstr's avatar vmpstr Committed by Commit bot

cc: Optimize TileManager::CleanUpReleasedTiles.

This patch ensures that we don't do extra hidden iterations in the
loop over tiles (erase is linear).

R=danakj, enne

Review URL: https://codereview.chromium.org/1069493003

Cr-Commit-Position: refs/heads/master@{#324161}
parent 0f6edddc
......@@ -277,12 +277,10 @@ void TileManager::FreeResourcesForReleasedTiles() {
}
void TileManager::CleanUpReleasedTiles() {
std::vector<Tile*>::iterator it = released_tiles_.begin();
while (it != released_tiles_.end()) {
Tile* tile = *it;
std::vector<Tile*> tiles_to_retain;
for (auto* tile : released_tiles_) {
if (tile->HasRasterTask()) {
++it;
tiles_to_retain.push_back(tile);
continue;
}
......@@ -299,8 +297,8 @@ void TileManager::CleanUpReleasedTiles() {
}
delete tile;
it = released_tiles_.erase(it);
}
released_tiles_.swap(tiles_to_retain);
}
void TileManager::DidFinishRunningTileTasks(TaskSet task_set) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment