| Index: gpu/ipc/service/pass_through_image_transport_surface.cc
|
| diff --git a/gpu/ipc/service/pass_through_image_transport_surface.cc b/gpu/ipc/service/pass_through_image_transport_surface.cc
|
| index a8e7cbcdce21f952ec332094e0a35a01e839d326..2af467e1049cc92f2dac5c11d482c74c3ca07b0f 100644
|
| --- a/gpu/ipc/service/pass_through_image_transport_surface.cc
|
| +++ b/gpu/ipc/service/pass_through_image_transport_surface.cc
|
| @@ -202,11 +202,16 @@ void PassThroughImageTransportSurface::FinishSwapBuffers(
|
| std::unique_ptr<std::vector<ui::LatencyInfo>> latency_info,
|
| gfx::SwapResult result) {
|
| base::TimeTicks swap_ack_time = base::TimeTicks::Now();
|
| + bool has_browser_snapshot_request = false;
|
| for (auto& latency : *latency_info) {
|
| latency.AddLatencyNumberWithTimestamp(
|
| ui::INPUT_EVENT_LATENCY_TERMINATED_FRAME_SWAP_COMPONENT, 0, 0,
|
| swap_ack_time, 1);
|
| + has_browser_snapshot_request |= latency.FindLatency(
|
| + ui::BROWSER_SNAPSHOT_FRAME_NUMBER_COMPONENT, nullptr);
|
| }
|
| + if (has_browser_snapshot_request)
|
| + WaitForSnapshotRendering();
|
|
|
| if (delegate_) {
|
| SwapBuffersCompleteParams params;
|
|
|