[PATCH xserver 03/13] glx: Don't enable EXT_texture_from_pixmap unconditionally

Adam Jackson ajax at redhat.com
Wed Mar 23 22:46:45 UTC 2016


Not all backend servers implement this.  Those that don't happen to not
use __glXInitExtensionEnableBits, but we'd like that to change, so fix
it up before we switch them over.

Signed-off-by: Adam Jackson <ajax at redhat.com>
---
 glx/extension_string.c | 2 +-
 glx/glxdri2.c          | 3 ++-
 glx/glxdriswrast.c     | 3 ++-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/glx/extension_string.c b/glx/extension_string.c
index 616c793..30c3416 100644
--- a/glx/extension_string.c
+++ b/glx/extension_string.c
@@ -86,7 +86,7 @@ static const struct extension_info known_glx_extensions[] = {
     { GLX(EXT_framebuffer_sRGB),        VER(0,0), N, },
     { GLX(EXT_import_context),          VER(0,0), Y, },
     { GLX(EXT_stereo_tree),             VER(0,0), N, },
-    { GLX(EXT_texture_from_pixmap),     VER(0,0), Y, },
+    { GLX(EXT_texture_from_pixmap),     VER(0,0), N, },
     { GLX(EXT_visual_info),             VER(0,0), Y, },
     { GLX(EXT_visual_rating),           VER(0,0), Y, },
 
diff --git a/glx/glxdri2.c b/glx/glxdri2.c
index 2a7c1e3..c56a376 100644
--- a/glx/glxdri2.c
+++ b/glx/glxdri2.c
@@ -909,7 +909,8 @@ initializeExtensions(__GLXDRIscreen * screen)
 
         if (strcmp(extensions[i]->name, __DRI_TEX_BUFFER) == 0) {
             screen->texBuffer = (const __DRItexBufferExtension *) extensions[i];
-            /* GLX_EXT_texture_from_pixmap is always enabled. */
+            __glXEnableExtension(screen->glx_enable_bits,
+                                 "GLX_EXT_texture_from_pixmap");
             LogMessage(X_INFO,
                        "AIGLX: GLX_EXT_texture_from_pixmap backed by buffer objects\n");
         }
diff --git a/glx/glxdriswrast.c b/glx/glxdriswrast.c
index cb57e9a..84fd3a1 100644
--- a/glx/glxdriswrast.c
+++ b/glx/glxdriswrast.c
@@ -426,7 +426,8 @@ initializeExtensions(__GLXDRIscreen * screen)
 
         if (strcmp(extensions[i]->name, __DRI_TEX_BUFFER) == 0) {
             screen->texBuffer = (const __DRItexBufferExtension *) extensions[i];
-            /* GLX_EXT_texture_from_pixmap is always enabled. */
+            __glXEnableExtension(screen->glx_enable_bits,
+                                 "GLX_EXT_texture_from_pixmap\n");
         }
 
 #ifdef __DRI2_FLUSH_CONTROL
-- 
2.5.0



More information about the xorg-devel mailing list