| Index: cc/resources/tile_manager.h
|
| diff --git a/cc/resources/tile_manager.h b/cc/resources/tile_manager.h
|
| index ff788ae8acfb154d2cb54682c55267a711022938..d93d5ee4819ac37897e56ee979e113d203afce3d 100644
|
| --- a/cc/resources/tile_manager.h
|
| +++ b/cc/resources/tile_manager.h
|
| @@ -90,7 +90,8 @@ class CC_EXPORT TileManager : public RasterWorkerPoolClient {
|
| }
|
|
|
| bool AreTilesRequiredForActivationReady() const {
|
| - return tiles_that_need_to_be_initialized_for_activation_.empty();
|
| + return tiles_that_need_to_be_initialized_for_activation_.empty() &&
|
| + oom_tiles_that_need_to_be_initialized_for_activation_.empty();
|
| }
|
|
|
| protected:
|
| @@ -110,6 +111,8 @@ class CC_EXPORT TileManager : public RasterWorkerPoolClient {
|
| // Overriden from RasterWorkerPoolClient:
|
| virtual bool ShouldForceTasksRequiredForActivationToComplete() const
|
| OVERRIDE;
|
| + virtual void DidFinishedRunningTasks() OVERRIDE;
|
| + virtual void DidFinishedRunningTasksRequiredForActivation() OVERRIDE;
|
|
|
| // Virtual for test
|
| virtual void ScheduleTasks();
|
| @@ -131,6 +134,7 @@ class CC_EXPORT TileManager : public RasterWorkerPoolClient {
|
| RasterMode DetermineRasterMode(const Tile* tile) const;
|
| void CleanUpUnusedImageDecodeTasks();
|
| void AssignGpuMemoryToTiles();
|
| + void ReassignGpuMemoryToOOMTiles();
|
| void FreeResourceForTile(Tile* tile, RasterMode mode);
|
| void FreeResourcesForTile(Tile* tile);
|
| void FreeUnusedResourcesForTile(Tile* tile);
|
| @@ -155,6 +159,7 @@ class CC_EXPORT TileManager : public RasterWorkerPoolClient {
|
| TileVector tiles_that_need_to_be_rasterized_;
|
| typedef std::set<Tile*> TileSet;
|
| TileSet tiles_that_need_to_be_initialized_for_activation_;
|
| + TileSet oom_tiles_that_need_to_be_initialized_for_activation_;
|
|
|
| bool ever_exceeded_memory_budget_;
|
| MemoryHistory::Entry memory_stats_from_last_assign_;
|
|
|