| Index: cc/raster/raster_buffer_provider_unittest.cc | 
| diff --git a/cc/raster/raster_buffer_provider_unittest.cc b/cc/raster/raster_buffer_provider_unittest.cc | 
| index 1b4d3e5b14d44838e93dd77639050cfd45a772b4..3fb571355b36304c660ce76359d38e5f5c882332 100644 | 
| --- a/cc/raster/raster_buffer_provider_unittest.cc | 
| +++ b/cc/raster/raster_buffer_provider_unittest.cc | 
| @@ -20,10 +20,10 @@ | 
| #include "cc/base/unique_notifier.h" | 
| #include "cc/raster/bitmap_raster_buffer_provider.h" | 
| #include "cc/raster/gpu_raster_buffer_provider.h" | 
| -#include "cc/raster/gpu_rasterizer.h" | 
| #include "cc/raster/one_copy_raster_buffer_provider.h" | 
| #include "cc/raster/synchronous_task_graph_runner.h" | 
| #include "cc/raster/zero_copy_raster_buffer_provider.h" | 
| +#include "cc/resources/platform_color.h" | 
| #include "cc/resources/resource_pool.h" | 
| #include "cc/resources/resource_provider.h" | 
| #include "cc/resources/scoped_resource.h" | 
| @@ -156,43 +156,43 @@ | 
|  | 
| // Overridden from testing::Test: | 
| void SetUp() override { | 
| -    std::unique_ptr<RasterBufferProvider> raster_buffer_provider; | 
| switch (GetParam()) { | 
| case RASTER_BUFFER_PROVIDER_TYPE_ZERO_COPY: | 
| Create3dOutputSurfaceAndResourceProvider(); | 
| -        raster_buffer_provider = ZeroCopyRasterBufferProvider::Create( | 
| +        raster_buffer_provider_ = ZeroCopyRasterBufferProvider::Create( | 
| resource_provider_.get(), PlatformColor::BestTextureFormat()); | 
| break; | 
| case RASTER_BUFFER_PROVIDER_TYPE_ONE_COPY: | 
| Create3dOutputSurfaceAndResourceProvider(); | 
| -        raster_buffer_provider = base::MakeUnique<OneCopyRasterBufferProvider>( | 
| +        raster_buffer_provider_ = base::MakeUnique<OneCopyRasterBufferProvider>( | 
| base::ThreadTaskRunnerHandle::Get().get(), context_provider_.get(), | 
| worker_context_provider_.get(), resource_provider_.get(), | 
| kMaxBytesPerCopyOperation, false, kMaxStagingBuffers, | 
| -            PlatformColor::BestTextureFormat()); | 
| +            PlatformColor::BestTextureFormat(), false); | 
| break; | 
| case RASTER_BUFFER_PROVIDER_TYPE_GPU: | 
| Create3dOutputSurfaceAndResourceProvider(); | 
| -        raster_buffer_provider = base::MakeUnique<GpuRasterBufferProvider>( | 
| +        raster_buffer_provider_ = base::MakeUnique<GpuRasterBufferProvider>( | 
| context_provider_.get(), worker_context_provider_.get(), | 
| -            resource_provider_.get(), false, 0); | 
| +            resource_provider_.get(), false, 0, false); | 
| break; | 
| case RASTER_BUFFER_PROVIDER_TYPE_BITMAP: | 
| CreateSoftwareOutputSurfaceAndResourceProvider(); | 
| -        raster_buffer_provider = | 
| +        raster_buffer_provider_ = | 
| BitmapRasterBufferProvider::Create(resource_provider_.get()); | 
| break; | 
| } | 
|  | 
| -    DCHECK(raster_buffer_provider); | 
| - | 
| -    tile_task_manager_ = TileTaskManagerImpl::Create( | 
| -        std::move(raster_buffer_provider), &task_graph_runner_); | 
| +    DCHECK(raster_buffer_provider_); | 
| + | 
| +    tile_task_manager_ = TileTaskManagerImpl::Create(&task_graph_runner_); | 
| } | 
|  | 
| void TearDown() override { | 
| tile_task_manager_->Shutdown(); | 
| tile_task_manager_->CheckForCompletedTasks(); | 
| + | 
| +    raster_buffer_provider_->Shutdown(); | 
| } | 
|  | 
| void AllTileTasksFinished() { | 
| @@ -216,6 +216,7 @@ | 
| 0 /* dependencies */); | 
| } | 
|  | 
| +    raster_buffer_provider_->OrderingBarrier(); | 
| tile_task_manager_->ScheduleTasks(&graph_); | 
| } | 
|  | 
| @@ -228,8 +229,7 @@ | 
| // The raster buffer has no tile ids associated with it for partial update, | 
| // so doesn't need to provide a valid dirty rect. | 
| std::unique_ptr<RasterBuffer> raster_buffer = | 
| -        tile_task_manager_->GetRasterBufferProvider()->AcquireBufferForRaster( | 
| -            resource.get(), 0, 0); | 
| +        raster_buffer_provider_->AcquireBufferForRaster(resource.get(), 0, 0); | 
| TileTask::Vector empty; | 
| tasks_.push_back(new TestRasterTaskImpl(this, std::move(resource), id, | 
| std::move(raster_buffer), &empty)); | 
| @@ -246,8 +246,7 @@ | 
| RGBA_8888); | 
|  | 
| std::unique_ptr<RasterBuffer> raster_buffer = | 
| -        tile_task_manager_->GetRasterBufferProvider()->AcquireBufferForRaster( | 
| -            resource.get(), 0, 0); | 
| +        raster_buffer_provider_->AcquireBufferForRaster(resource.get(), 0, 0); | 
| TileTask::Vector empty; | 
| tasks_.push_back(new BlockingTestRasterTaskImpl( | 
| this, std::move(resource), id, std::move(raster_buffer), lock, &empty)); | 
| @@ -268,8 +267,7 @@ | 
| void OnRasterTaskCompleted(std::unique_ptr<RasterBuffer> raster_buffer, | 
| unsigned id, | 
| bool was_canceled) override { | 
| -    tile_task_manager_->GetRasterBufferProvider()->ReleaseBufferForRaster( | 
| -        std::move(raster_buffer)); | 
| +    raster_buffer_provider_->ReleaseBufferForRaster(std::move(raster_buffer)); | 
| RasterTaskResult result; | 
| result.id = id; | 
| result.canceled = was_canceled; | 
| @@ -307,6 +305,7 @@ | 
| std::unique_ptr<FakeOutputSurface> output_surface_; | 
| std::unique_ptr<ResourceProvider> resource_provider_; | 
| std::unique_ptr<TileTaskManager> tile_task_manager_; | 
| +  std::unique_ptr<RasterBufferProvider> raster_buffer_provider_; | 
| TestGpuMemoryBufferManager gpu_memory_buffer_manager_; | 
| TestSharedBitmapManager shared_bitmap_manager_; | 
| SynchronousTaskGraphRunner task_graph_runner_; | 
|  |