Index: android_webview/browser/surfaces_instance.cc |
diff --git a/android_webview/browser/surfaces_instance.cc b/android_webview/browser/surfaces_instance.cc |
index 93f515526b549b23af5cf567b1e46958b37e3692..c9819d8c8833db8e413a709dccabd1b2f21c3a77 100644 |
--- a/android_webview/browser/surfaces_instance.cc |
+++ b/android_webview/browser/surfaces_instance.cc |
@@ -28,6 +28,9 @@ |
namespace android_webview { |
namespace { |
+// The client_id used here should not conflict with the client_id generated |
+// from RenderWidgetHostImpl. |
+constexpr uint32_t kDefaultClientId = 0u; |
SurfacesInstance* g_surfaces_instance = nullptr; |
} // namespace |
@@ -39,7 +42,8 @@ scoped_refptr<SurfacesInstance> SurfacesInstance::GetOrCreateInstance() { |
} |
SurfacesInstance::SurfacesInstance() |
- : next_client_id_(1u), frame_sink_id_(AllocateFrameSinkId()) { |
+ : frame_sink_id_allocator_(kDefaultClientId), |
+ frame_sink_id_(AllocateFrameSinkId()) { |
cc::RendererSettings settings; |
// Should be kept in sync with compositor_impl_android.cc. |
@@ -89,7 +93,7 @@ void SurfacesInstance::DisplayOutputSurfaceLost() { |
} |
cc::FrameSinkId SurfacesInstance::AllocateFrameSinkId() { |
- return cc::FrameSinkId(next_client_id_++, 0 /* sink_id */); |
+ return frame_sink_id_allocator_.NextFrameSinkId(); |
} |
cc::SurfaceManager* SurfacesInstance::GetSurfaceManager() { |