Mesa (master): egl_glx: Add support for eglWaitClient and eglWaitNative.

Brian Paul brianp at kemper.freedesktop.org
Thu Oct 22 15:33:55 UTC 2009


Module: Mesa
Branch: master
Commit: 60cf250d4705d5005399a53ab334fbc10b4bf9c4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=60cf250d4705d5005399a53ab334fbc10b4bf9c4

Author: Chia-I Wu <olvaffe at gmail.com>
Date:   Fri Oct  2 10:38:14 2009 +0800

egl_glx: Add support for eglWaitClient and eglWaitNative.

Signed-off-by: Chia-I Wu <olvaffe at gmail.com>

---

 src/egl/drivers/glx/egl_glx.c |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/src/egl/drivers/glx/egl_glx.c b/src/egl/drivers/glx/egl_glx.c
index 71b2618..96292b0 100644
--- a/src/egl/drivers/glx/egl_glx.c
+++ b/src/egl/drivers/glx/egl_glx.c
@@ -904,6 +904,21 @@ GLX_eglGetProcAddress(const char *procname)
    return (_EGLProc) glXGetProcAddress((const GLubyte *) procname);
 }
 
+static EGLBoolean
+GLX_eglWaitClient(_EGLDriver *drv, _EGLDisplay *dpy, _EGLContext *ctx)
+{
+   glXWaitGL();
+   return EGL_TRUE;
+}
+
+static EGLBoolean
+GLX_eglWaitNative(_EGLDriver *drv, _EGLDisplay *dpy, EGLint engine)
+{
+   if (engine != EGL_CORE_NATIVE_ENGINE)
+      return _eglError(EGL_BAD_PARAMETER, "eglWaitNative");
+   glXWaitX();
+   return EGL_TRUE;
+}
 
 static void
 GLX_Unload(_EGLDriver *drv)
@@ -936,6 +951,8 @@ _eglMain(const char *args)
    GLX_drv->Base.API.DestroySurface = GLX_eglDestroySurface;
    GLX_drv->Base.API.SwapBuffers = GLX_eglSwapBuffers;
    GLX_drv->Base.API.GetProcAddress = GLX_eglGetProcAddress;
+   GLX_drv->Base.API.WaitClient = GLX_eglWaitClient;
+   GLX_drv->Base.API.WaitNative = GLX_eglWaitNative;
 
    GLX_drv->Base.Name = "GLX";
    GLX_drv->Base.Unload = GLX_Unload;




More information about the mesa-commit mailing list