Index: ui/compositor/test/in_process_context_factory.cc |
diff --git a/ui/compositor/test/in_process_context_factory.cc b/ui/compositor/test/in_process_context_factory.cc |
index a6a88a2410942938e63fe8194132f171b1855694..90ad6b318f1c04990bf7837e64188db20d2fdadd 100644 |
--- a/ui/compositor/test/in_process_context_factory.cc |
+++ b/ui/compositor/test/in_process_context_factory.cc |
@@ -119,6 +119,7 @@ class DirectOutputSurface : public cc::OutputSurface { |
struct InProcessContextFactory::PerCompositorData { |
gpu::SurfaceHandle surface_handle = gpu::kNullSurfaceHandle; |
+ std::unique_ptr<cc::BeginFrameSource> begin_frame_source; |
std::unique_ptr<cc::Display> display; |
}; |
@@ -195,18 +196,17 @@ void InProcessContextFactory::CreateCompositorFrameSink( |
base::MakeUnique<DirectOutputSurface>(context_provider); |
} |
- std::unique_ptr<cc::DelayBasedBeginFrameSource> begin_frame_source( |
- new cc::DelayBasedBeginFrameSource( |
- base::MakeUnique<cc::DelayBasedTimeSource>( |
- compositor->task_runner().get()))); |
+ data->begin_frame_source.reset(new cc::DelayBasedBeginFrameSource( |
+ base::MakeUnique<cc::DelayBasedTimeSource>( |
+ compositor->task_runner().get()))); |
std::unique_ptr<cc::DisplayScheduler> scheduler(new cc::DisplayScheduler( |
- begin_frame_source.get(), compositor->task_runner().get(), |
+ compositor->task_runner().get(), |
display_output_surface->capabilities().max_frames_pending)); |
data->display = base::MakeUnique<cc::Display>( |
&shared_bitmap_manager_, &gpu_memory_buffer_manager_, |
compositor->GetRendererSettings(), compositor->frame_sink_id(), |
- std::move(begin_frame_source), std::move(display_output_surface), |
+ data->begin_frame_source.get(), std::move(display_output_surface), |
std::move(scheduler), base::MakeUnique<cc::TextureMailboxDeleter>( |
compositor->task_runner().get())); |