summaryrefslogtreecommitdiffstats
path: root/ui/gl/gl_fence.cc
diff options
context:
space:
mode:
authorsievers@google.com <sievers@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-12 20:11:53 +0000
committersievers@google.com <sievers@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-12 20:11:53 +0000
commite0262cc2f4d0269ecd0f763f6f128c4cae075fc8 (patch)
tree573a934a78583660aa38948e19884b71a8f92853 /ui/gl/gl_fence.cc
parente238c63f15fbaf36ad146a043d903bede97c5745 (diff)
downloadchromium_src-e0262cc2f4d0269ecd0f763f6f128c4cae075fc8.zip
chromium_src-e0262cc2f4d0269ecd0f763f6f128c4cae075fc8.tar.gz
chromium_src-e0262cc2f4d0269ecd0f763f6f128c4cae075fc8.tar.bz2
Prefer GL_ARB_sync/ES3 fences
They are a better option since server-side wait is supported by default. It also avoids the broken EGL_KHR_fence_sync implementation on Qualcomm drivers. BUG=371530,278606,341867 R=piman@chromium.org, reveman@chromium.org Review URL: https://codereview.chromium.org/285523002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269863 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/gl/gl_fence.cc')
-rw-r--r--ui/gl/gl_fence.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/ui/gl/gl_fence.cc b/ui/gl/gl_fence.cc
index def030b..073e6ee 100644
--- a/ui/gl/gl_fence.cc
+++ b/ui/gl/gl_fence.cc
@@ -161,14 +161,14 @@ gfx::GLFence* CreateFence(bool flush) {
DCHECK(gfx::GLContext::GetCurrent())
<< "Trying to create fence with no context";
-#if !defined(OS_MACOSX)
- if (gfx::g_driver_egl.ext.b_EGL_KHR_fence_sync)
- return new EGLFenceSync(flush);
-#endif
// Prefer ARB_sync which supports server-side wait.
if (gfx::g_driver_gl.ext.b_GL_ARB_sync ||
gfx::GLContext::GetCurrent()->GetVersionInfo()->is_es3)
return new GLFenceARBSync(flush);
+#if !defined(OS_MACOSX)
+ if (gfx::g_driver_egl.ext.b_EGL_KHR_fence_sync)
+ return new EGLFenceSync(flush);
+#endif
if (gfx::g_driver_gl.ext.b_GL_NV_fence)
return new GLFenceNVFence(flush);
return NULL;