Index: android_webview/browser/hardware_renderer.cc |
diff --git a/android_webview/browser/hardware_renderer.cc b/android_webview/browser/hardware_renderer.cc |
index 45bf988495cec0de18e0505211c3ee54029c146d..db8ffade174a03721fd3677e9bd8466c1c113271 100644 |
--- a/android_webview/browser/hardware_renderer.cc |
+++ b/android_webview/browser/hardware_renderer.cc |
@@ -168,7 +168,6 @@ void HardwareRenderer::DrawGL(AwDrawGLInfo* draw_info) { |
void HardwareRenderer::AllocateSurface() { |
DCHECK(!child_id_.is_valid()); |
child_id_ = surface_id_allocator_->GenerateId(); |
- surface_factory_->Create(child_id_); |
surfaces_->AddChildId(cc::SurfaceId(frame_sink_id_, child_id_)); |
} |
@@ -178,9 +177,8 @@ void HardwareRenderer::DestroySurface() { |
// Submit an empty frame to force any existing resources to be returned. |
surface_factory_->SubmitCompositorFrame(child_id_, cc::CompositorFrame(), |
cc::SurfaceFactory::DrawCallback()); |
- |
surfaces_->RemoveChildId(cc::SurfaceId(frame_sink_id_, child_id_)); |
- surface_factory_->Destroy(child_id_); |
+ surface_factory_->EvictFrame(); |
child_id_ = cc::LocalFrameId(); |
} |