---
src/glx/x11/glx_query.c | 10 ++++++----
src/glx/x11/glxclient.h | 6 ++++--
src/glx/x11/glxcmds.c | 4 ++--
src/glx/x11/glxext.c | 4 ++--
src/glx/x11/single2.c | 2 +-
5 files changed, 15 insertions(+), 11 deletions(-)
diff --git a/src/glx/x11/glx_query.c b/src/glx/x11/glx_query.c
index 4197bb1..9e9b6fd 100644
--- a/src/glx/x11/glx_query.c
+++ b/src/glx/x11/glx_query.c
@@ -45,6 +45,7 @@
*/
char *
__glXQueryServerString(Display* dpy,
+ int opcode,
CARD32 screen,
CARD32 name)
{
@@ -71,6 +72,7 @@ __glXQueryServerString(Display* dpy,
*/
char *
__glXGetString(Display* dpy,
+ int opcode,
CARD32 contextTag,
CARD32 name)
{
@@ -168,22 +170,22 @@ __glXGetStringFromServer(Display * dpy, int opcode,
CARD32 glxCode,
char *
__glXQueryServerString(Display* dpy,
+ int opcode,
CARD32 screen,
CARD32 name)
{
- GLXContext gc = __glXGetCurrentContext();
- return __glXGetStringFromServer(dpy, gc->majorOpcode,
+ return __glXGetStringFromServer(dpy, opcode,
X_GLXQueryServerString,
screen, name);
}
char *
__glXGetString(Display* dpy,
+ int opcode,
CARD32 contextTag,
CARD32 name)
{
- GLXContext gc = __glXGetCurrentContext();
- return __glXGetStringFromServer(dpy, gc->majorOpcode, X_GLsop_GetString,
+ return __glXGetStringFromServer(dpy, opcode, X_GLsop_GetString,
contextTag, name);
}
diff --git a/src/glx/x11/glxclient.h b/src/glx/x11/glxclient.h
index caa351b..7fc1a6f 100644
--- a/src/glx/x11/glxclient.h
+++ b/src/glx/x11/glxclient.h
@@ -740,8 +740,10 @@ extern void _XSend(Display*, const void*, long);
extern void __glXInitializeVisualConfigFromTags( __GLcontextModes *config,
int count, const INT32 *bp, Bool tagged_only, Bool fbconfig_style_tags );
-extern char * __glXQueryServerString(Display* dpy, CARD32 screen, CARD32 name);
-extern char * __glXGetString(Display* dpy, CARD32 screen, CARD32 name);
+extern char * __glXQueryServerString(Display* dpy, int opcode,
+ CARD32 screen, CARD32 name);
+extern char * __glXGetString(Display* dpy, int opcode,
+ CARD32 screen, CARD32 name);
extern char *__glXstrdup(const char *str);
diff --git a/src/glx/x11/glxcmds.c b/src/glx/x11/glxcmds.c
index 565015e..bd39a87 100644
--- a/src/glx/x11/glxcmds.c
+++ b/src/glx/x11/glxcmds.c
@@ -1337,7 +1337,7 @@ PUBLIC const char *glXQueryExtensionsString( Display
*dpy, int screen )
if (!psc->effectiveGLXexts) {
if (!psc->serverGLXexts) {
psc->serverGLXexts =
- __glXQueryServerString(dpy, screen, GLX_EXTENSIONS);
+ __glXQueryServerString(dpy, priv->majorOpcode, screen,
GLX_EXTENSIONS);
}
__glXCalculateUsableExtensions(psc,
@@ -1392,7 +1392,7 @@ PUBLIC const char *glXQueryServerString( Display *dpy,
int screen, int name )
}
if ( *str == NULL ) {
- *str = __glXQueryServerString(dpy, screen, name);
+ *str = __glXQueryServerString(dpy, priv->majorOpcode, screen, name);
}
return *str;
diff --git a/src/glx/x11/glxext.c b/src/glx/x11/glxext.c
index c5fada9..02b611f 100644
--- a/src/glx/x11/glxext.c
+++ b/src/glx/x11/glxext.c
@@ -551,7 +551,7 @@ getFBConfigs(Display * dpy, __GLXdisplayPrivate * priv, int
screen)
__GLXscreenConfigs *psc;
psc = priv->screenConfigs + screen;
- psc->serverGLXexts = __glXQueryServerString(dpy, screen, GLX_EXTENSIONS);
+ psc->serverGLXexts = __glXQueryServerString(dpy, priv->majorOpcode, screen,
GLX_EXTENSIONS);
LockDisplay(dpy);
@@ -609,7 +609,7 @@ AllocAndFetchScreenConfigs(Display * dpy,
__GLXdisplayPrivate * priv)
memset(psc, 0, screens * sizeof(__GLXscreenConfigs));
priv->screenConfigs = psc;
- priv->serverGLXversion = __glXQueryServerString(dpy, 0, GLX_VERSION);
+ priv->serverGLXversion = __glXQueryServerString(dpy, priv->majorOpcode, 0,
GLX_VERSION);
if (priv->serverGLXversion == NULL) {
FreeScreenConfigs(priv);
return GL_FALSE;
diff --git a/src/glx/x11/single2.c b/src/glx/x11/single2.c
index 9d05859..afbe986 100644
--- a/src/glx/x11/single2.c
+++ b/src/glx/x11/single2.c
@@ -672,7 +672,7 @@ __indirect_glGetString(GLenum name)
*/
(void) __glXFlushRenderBuffer(gc, gc->pc);
- s = (GLubyte *) __glXGetString(dpy, gc->currentContextTag, name);
+ s = (GLubyte *) __glXGetString(dpy, gc->majorOpcode, gc->currentContextTag,
name);
if (!s) {
/* Throw data on the floor */
__glXSetError(gc, GL_OUT_OF_MEMORY);
--
1.6.0.2
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev