Index: cc/tile_manager.cc |
diff --git a/cc/tile_manager.cc b/cc/tile_manager.cc |
index 06b5090ccfcf5407a7a4bfc2ab7641dd42b4d263..f3921df7903764ed3ce93d7f4e3c0aa379dc8554 100644 |
--- a/cc/tile_manager.cc |
+++ b/cc/tile_manager.cc |
@@ -170,6 +170,20 @@ void TileManager::RegisterTile(Tile* tile) { |
} |
void TileManager::UnregisterTile(Tile* tile) { |
+ for (TileList::iterator it = tiles_with_image_decoding_tasks_.begin(); |
+ it != tiles_with_image_decoding_tasks_.end(); it++) { |
+ if (*it == tile) { |
+ tiles_with_image_decoding_tasks_.erase(it); |
+ break;; |
+ } |
+ } |
+ for (TileVector::iterator it = tiles_that_need_to_be_rasterized_.begin(); |
+ it != tiles_that_need_to_be_rasterized_.end(); it++) { |
+ if (*it == tile) { |
+ tiles_that_need_to_be_rasterized_.erase(it); |
+ break; |
+ } |
+ } |
for (TileVector::iterator it = tiles_.begin(); it != tiles_.end(); it++) { |
if (*it == tile) { |
FreeResourcesForTile(tile); |