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

Author: Ian Romanick <ian.d.roman...@intel.com>
Date:   Thu Feb  4 16:37:59 2010 -0800

glx: Pass screen number as parameter to CreateContext

Passing the screen parameter to CreateContext will simplify a couple
of changes that are coming.

---

 src/glx/glxcmds.c |   23 ++++++++++++++++-------
 1 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/src/glx/glxcmds.c b/src/glx/glxcmds.c
index e3f77a0..2eee005 100644
--- a/src/glx/glxcmds.c
+++ b/src/glx/glxcmds.c
@@ -366,12 +366,13 @@ CreateContext(Display * dpy, XVisualInfo * vis,
               const __GLcontextModes * const fbconfig,
               GLXContext shareList,
               Bool allowDirect, GLXContextID contextID,
-             unsigned code, int renderType)
+             unsigned code, int renderType, int screen)
 {
    GLXContext gc;
 #ifdef GLX_DIRECT_RENDERING
-   int screen = (fbconfig == NULL) ? vis->screen : fbconfig->screen;
    __GLXscreenConfigs *const psc = GetGLXScreenConfigs(dpy, screen);
+#else
+   (void) screen;
 #endif
 
    if (dpy == NULL)
@@ -504,7 +505,7 @@ glXCreateContext(Display * dpy, XVisualInfo * vis,
                  GLXContext shareList, Bool allowDirect)
 {
    return CreateContext(dpy, vis, NULL, shareList, allowDirect, None,
-                        X_GLXCreateContext, 0);
+                        X_GLXCreateContext, 0, vis->screen);
 }
 
 _X_HIDDEN void
@@ -1753,8 +1754,11 @@ glXImportContextEXT(Display * dpy, GLXContextID 
contextID)
       return NULL;
    }
 
+   /* FIXME: Why does this call CreateContext?  There is no protocol sent for
+    * FIXME: this function.
+    */
    ctx = CreateContext(dpy, NULL, NULL, NULL, False, contextID,
-                      X_GLXCreateContext, 0);
+                      X_GLXCreateContext, 0, 0);
    if (NULL != ctx) {
       if (Success != __glXQueryContextInfo(dpy, ctx)) {
          return NULL;
@@ -1803,8 +1807,12 @@ PUBLIC GLXContext
 glXCreateNewContext(Display * dpy, GLXFBConfig config,
                     int renderType, GLXContext shareList, Bool allowDirect)
 {
-   return CreateContext(dpy, NULL, (__GLcontextModes *) config, shareList,
-                        allowDirect, None, X_GLXCreateNewContext, renderType);
+   const __GLcontextModes *const fbconfig =
+      (const __GLcontextModes *const) config;
+
+   return CreateContext(dpy, NULL, fbconfig, shareList,
+                        allowDirect, None, X_GLXCreateNewContext, renderType,
+                       fbconfig->screen);
 }
 
 
@@ -2293,7 +2301,8 @@ glXCreateContextWithConfigSGIX(Display * dpy,
        && __glXExtensionBitIsEnabled(psc, SGIX_fbconfig_bit)) {
       gc = CreateContext(dpy, NULL, (__GLcontextModes *) config, shareList,
                          allowDirect, None,
-                        X_GLXvop_CreateContextWithConfigSGIX, renderType);
+                        X_GLXvop_CreateContextWithConfigSGIX, renderType,
+                        fbconfig->screen);
    }
 
    return gc;

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to