From 63f858943084b5cbeb20cce96ccae3c25e633663 Mon Sep 17 00:00:00 2001 From: Zack Rusin Date: Thu, 24 Jan 2013 17:48:12 -0800 Subject: [PATCH] glx: only advertise GLX_INTEL_swap_event if it's supported Only drivers supporting DRI2 version >=4 support GLX_INTEL_swap_event. So lets mark it as such otherwise applications which use this extension (i.e. everything based on Clutter, e.g. gnome-shell) break horribly on drivers supporting DRI2 versions only up to 3. Note: This is a candidate for the 9.0 branch. Reviewed-by: Brian Paul (cherry picked from commit dbb2d192de33064ae6cdb799d71c5ac89a6ea8ff) --- src/glx/dri2_glx.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/glx/dri2_glx.c b/src/glx/dri2_glx.c index 15f590e..b8a007c 100644 --- a/src/glx/dri2_glx.c +++ b/src/glx/dri2_glx.c @@ -960,8 +960,9 @@ dri2BindExtensions(struct dri2_screen *psc, const __DRIextension **extensions) __glXEnableDirectExtension(&psc->base, "GLX_MESA_swap_control"); __glXEnableDirectExtension(&psc->base, "GLX_SGI_make_current_read"); - /* FIXME: if DRI2 version supports it... */ - __glXEnableDirectExtension(&psc->base, "GLX_INTEL_swap_event"); + if (psc->dri2->base.version >= 4) { + __glXEnableDirectExtension(&psc->base, "GLX_INTEL_swap_event"); + } if (psc->dri2->base.version >= 3) { const unsigned mask = psc->dri2->getAPIMask(psc->driScreen); -- 2.7.4