| Index: ui/gl/gl_surface_ozone.cc
|
| diff --git a/ui/gl/gl_surface_ozone.cc b/ui/gl/gl_surface_ozone.cc
|
| index b9655525274a490a8b3f592da3436fccb9ceece2..67c1483ca9d5e586fd99a970619beef3d7c664c8 100644
|
| --- a/ui/gl/gl_surface_ozone.cc
|
| +++ b/ui/gl/gl_surface_ozone.cc
|
| @@ -262,13 +262,14 @@ gfx::SwapResult GLSurfaceOzoneSurfaceless::SwapBuffers() {
|
| EGLDisplay display = GetDisplay();
|
| WaitForFence(display, fence);
|
| eglDestroySyncKHR(display, fence);
|
| - } else if (ozone_surface_->IsUniversalDisplayLinkDevice()) {
|
| - glFinish();
|
| }
|
|
|
| unsubmitted_frames_.back()->ScheduleOverlayPlanes(widget_);
|
| unsubmitted_frames_.back()->overlays.clear();
|
|
|
| + if (ozone_surface_->IsUniversalDisplayLinkDevice())
|
| + glFinish();
|
| +
|
| return ozone_surface_->OnSwapBuffers() ? gfx::SwapResult::SWAP_ACK
|
| : gfx::SwapResult::SWAP_FAILED;
|
| }
|
| @@ -347,9 +348,6 @@ void GLSurfaceOzoneSurfaceless::SwapBuffersAsync(
|
| return; // Defer frame submission until fence signals.
|
| }
|
|
|
| - if (ozone_surface_->IsUniversalDisplayLinkDevice())
|
| - glFinish();
|
| -
|
| frame->ready = true;
|
| SubmitFrame();
|
| }
|
| @@ -383,6 +381,9 @@ void GLSurfaceOzoneSurfaceless::SubmitFrame() {
|
| return;
|
| }
|
|
|
| + if (ozone_surface_->IsUniversalDisplayLinkDevice())
|
| + glFinish();
|
| +
|
| ozone_surface_->OnSwapBuffersAsync(frame->callback);
|
| }
|
| }
|
|
|