summaryrefslogtreecommitdiffstats
path: root/src/egl/drivers/dri2/platform_x11.c
diff options
context:
space:
mode:
authorChad Versace <chad.versace@linux.intel.com>2014-01-28 12:34:19 -0800
committerChad Versace <chad.versace@linux.intel.com>2014-03-17 15:36:03 -0700
commit8b9298af0a3bce1360cc2c020b31470b37b660fe (patch)
treead14459299c53482fc68217f471d0280beabd9f3 /src/egl/drivers/dri2/platform_x11.c
parenta218765478e5207f4337406d98865c6b5cf3784e (diff)
downloadexternal_mesa3d-8b9298af0a3bce1360cc2c020b31470b37b660fe.zip
external_mesa3d-8b9298af0a3bce1360cc2c020b31470b37b660fe.tar.gz
external_mesa3d-8b9298af0a3bce1360cc2c020b31470b37b660fe.tar.bz2
egl/dri2: Dispatch eglSwapInterval by display, not driver
Add dri2_egl_display_vtbl::swap_interval, set it for each platform, and let egl_dri2 dispatch eglSwapInterval to that. This prepares for the EGL platform extensions. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
Diffstat (limited to 'src/egl/drivers/dri2/platform_x11.c')
-rw-r--r--src/egl/drivers/dri2/platform_x11.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/egl/drivers/dri2/platform_x11.c b/src/egl/drivers/dri2/platform_x11.c
index ea871fd..9bc2afb 100644
--- a/src/egl/drivers/dri2/platform_x11.c
+++ b/src/egl/drivers/dri2/platform_x11.c
@@ -40,6 +40,7 @@
#include <sys/stat.h>
#include "egl_dri2.h"
+#include "egl_dri2_fallbacks.h"
static EGLBoolean
dri2_x11_swap_interval(_EGLDriver *drv, _EGLDisplay *disp, _EGLSurface *surf,
@@ -993,10 +994,12 @@ dri2_x11_create_image_khr(_EGLDriver *drv, _EGLDisplay *disp,
static struct dri2_egl_display_vtbl dri2_x11_swrast_display_vtbl = {
.authenticate = NULL,
+ .swap_interval = dri2_fallback_swap_interval,
};
static struct dri2_egl_display_vtbl dri2_x11_display_vtbl = {
.authenticate = dri2_x11_authenticate,
+ .swap_interval = dri2_x11_swap_interval,
};
static EGLBoolean
@@ -1139,7 +1142,6 @@ dri2_initialize_x11_dri2(_EGLDriver *drv, _EGLDisplay *disp)
drv->API.CreateImageKHR = dri2_x11_create_image_khr;
drv->API.SwapBuffersRegionNOK = dri2_x11_swap_buffers_region;
drv->API.PostSubBufferNV = dri2_x11_post_sub_buffer;
- drv->API.SwapInterval = dri2_x11_swap_interval;
dri2_dpy = calloc(1, sizeof *dri2_dpy);
if (!dri2_dpy)