diff options
author | hshi <hshi@chromium.org> | 2015-02-26 21:26:15 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-02-27 05:26:54 +0000 |
commit | e0b8b9dfff8f5fa19aa0d039c6d1fecc96d113e6 (patch) | |
tree | d99896ea45a16f3b773dc631560939022f1616d7 /ui/gl/gl_surface_ozone.cc | |
parent | 5deeb5b79a0ba83f15569a222397d53d2f9abc51 (diff) | |
download | chromium_src-e0b8b9dfff8f5fa19aa0d039c6d1fecc96d113e6.zip chromium_src-e0b8b9dfff8f5fa19aa0d039c6d1fecc96d113e6.tar.gz chromium_src-e0b8b9dfff8f5fa19aa0d039c6d1fecc96d113e6.tar.bz2 |
Force glFinish for page flips on a UDL device.
This is a temporary workaround. TODO: crbug.com/462360
replace with a per-surface flush as it gets implemented
in GL drivers.
BUG=457898
TEST=verify that UDL+i915 extended desktop has no artifacts
Review URL: https://codereview.chromium.org/942113006
Cr-Commit-Position: refs/heads/master@{#318408}
Diffstat (limited to 'ui/gl/gl_surface_ozone.cc')
-rw-r--r-- | ui/gl/gl_surface_ozone.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/ui/gl/gl_surface_ozone.cc b/ui/gl/gl_surface_ozone.cc index cba706b..f79b6d0 100644 --- a/ui/gl/gl_surface_ozone.cc +++ b/ui/gl/gl_surface_ozone.cc @@ -164,8 +164,8 @@ class GL_EXPORT GLSurfaceOzoneSurfaceless : public SurfacelessEGL { bool Flush() { glFlush(); - // TODO: the following should be replaced by a per surface flush as it gets - // implemented in GL drivers. + // TODO: crbug.com/462360 the following should be replaced by a per surface + // flush as it gets implemented in GL drivers. if (has_implicit_external_sync_) { const EGLint attrib_list[] = { EGL_SYNC_CONDITION_KHR, @@ -182,6 +182,8 @@ class GL_EXPORT GLSurfaceOzoneSurfaceless : public SurfacelessEGL { } else { return false; } + } else if (ozone_surface_->IsUniversalDisplayLinkDevice()) { + glFinish(); } return true; } |