Index: android_webview/browser/surfaces_instance.cc |
diff --git a/android_webview/browser/surfaces_instance.cc b/android_webview/browser/surfaces_instance.cc |
index 099858e942b4c7f8f41c537b7f51218b12d300dd..2803531ca5e4871dfef9bd99701f761888896aa7 100644 |
--- a/android_webview/browser/surfaces_instance.cc |
+++ b/android_webview/browser/surfaces_instance.cc |
@@ -85,7 +85,8 @@ |
g_surfaces_instance = nullptr; |
DCHECK(child_ids_.empty()); |
- surface_factory_->EvictSurface(); |
+ if (root_id_.is_valid()) |
+ surface_factory_->Destroy(root_id_); |
surface_manager_->InvalidateFrameSinkId(frame_sink_id_); |
} |
@@ -137,6 +138,7 @@ |
if (!root_id_.is_valid()) { |
root_id_ = surface_id_allocator_->GenerateId(); |
+ surface_factory_->Create(root_id_); |
display_->SetLocalFrameId(root_id_, 1.f); |
} |
surface_factory_->SubmitCompositorFrame(root_id_, std::move(frame), |