aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2013-11-12 11:23:32 +0100
committermarha <marha@users.sourceforge.net>2013-11-12 11:23:32 +0100
commit044155399477435a14c90420ab7c19d59cc3bddc (patch)
tree276526f46bbc89320e773ec07692142a84811e29
parentf1b679a372274041aa3e7a02f979390b17eb1ab5 (diff)
downloadvcxsrv-044155399477435a14c90420ab7c19d59cc3bddc.tar.gz
vcxsrv-044155399477435a14c90420ab7c19d59cc3bddc.tar.bz2
vcxsrv-044155399477435a14c90420ab7c19d59cc3bddc.zip
Do not call gl functions directly
-rw-r--r--xorg-server/glx/single2.c25
-rw-r--r--xorg-server/glx/singlesize.c16
-rw-r--r--xorg-server/glx/xfont.c33
3 files changed, 49 insertions, 25 deletions
diff --git a/xorg-server/glx/single2.c b/xorg-server/glx/single2.c
index 2719697ed..c199ed1cb 100644
--- a/xorg-server/glx/single2.c
+++ b/xorg-server/glx/single2.c
@@ -38,10 +38,17 @@
#include <stdlib.h>
#include "glxserver.h"
-#include "glxutil.h"
#include "glxext.h"
-#include "indirect_dispatch.h"
+#include "singlesize.h"
#include "unpack.h"
+#include "indirect_dispatch.h"
+#include "indirect_size_get.h"
+#include "glapitable.h"
+#include "glapi.h"
+#include "glthread.h"
+#include "dispatch.h"
+
+#include "glxutil.h"
int
__glXDisp_FeedbackBuffer(__GLXclientState * cl, GLbyte * pc)
@@ -69,7 +76,7 @@ __glXDisp_FeedbackBuffer(__GLXclientState * cl, GLbyte * pc)
}
cx->feedbackBufSize = size;
}
- glFeedbackBuffer(size, type, cx->feedbackBuf);
+ CALL_FeedbackBuffer(GET_DISPATCH(), (size, type, cx->feedbackBuf));
cx->hasUnflushedCommands = GL_TRUE;
return Success;
}
@@ -97,7 +104,7 @@ __glXDisp_SelectBuffer(__GLXclientState * cl, GLbyte * pc)
}
cx->selectBufSize = size;
}
- glSelectBuffer(size, cx->selectBuf);
+ CALL_SelectBuffer(GET_DISPATCH(), (size, cx->selectBuf));
cx->hasUnflushedCommands = GL_TRUE;
return Success;
}
@@ -120,10 +127,10 @@ __glXDisp_RenderMode(__GLXclientState * cl, GLbyte * pc)
pc += __GLX_SINGLE_HDR_SIZE;
newMode = *(GLenum *) pc;
- retval = glRenderMode(newMode);
+ retval = CALL_RenderMode(GET_DISPATCH(), (newMode));
/* Check that render mode worked */
- glGetIntegerv(GL_RENDER_MODE, &newModeCheck);
+ CALL_GetIntegerv(GET_DISPATCH(), (GL_RENDER_MODE, &newModeCheck));
if (newModeCheck != newMode) {
/* Render mode change failed. Bail */
newMode = newModeCheck;
@@ -214,7 +221,7 @@ __glXDisp_Flush(__GLXclientState * cl, GLbyte * pc)
return error;
}
- glFlush();
+ CALL_Flush(GET_DISPATCH(), ());
cx->hasUnflushedCommands = GL_FALSE;
return Success;
}
@@ -232,7 +239,7 @@ __glXDisp_Finish(__GLXclientState * cl, GLbyte * pc)
}
/* Do a local glFinish */
- glFinish();
+ CALL_Finish(GET_DISPATCH(), ());
cx->hasUnflushedCommands = GL_FALSE;
/* Send empty reply packet to indicate finish is finished */
@@ -341,7 +348,7 @@ DoGetString(__GLXclientState * cl, GLbyte * pc, GLboolean need_swap)
pc += __GLX_SINGLE_HDR_SIZE;
name = *(GLenum *) (pc + 0);
- string = (const char *) glGetString(name);
+ string = (const char *) CALL_GetString(GET_DISPATCH(), (name));
client = cl->client;
if (string == NULL)
diff --git a/xorg-server/glx/singlesize.c b/xorg-server/glx/singlesize.c
index a93a0e5fe..48ebbec4a 100644
--- a/xorg-server/glx/singlesize.c
+++ b/xorg-server/glx/singlesize.c
@@ -33,10 +33,18 @@
#endif
#include "glheader.h"
-#include <GL/gl.h>
#include "glxserver.h"
+#include "glxext.h"
#include "singlesize.h"
+#include "unpack.h"
+#include "indirect_dispatch.h"
#include "indirect_size_get.h"
+#include "glapitable.h"
+#include "glapi.h"
+#include "glthread.h"
+#include "dispatch.h"
+
+#include <GL/gl.h>
/*
** These routines compute the size of variable-size returned parameters.
@@ -72,7 +80,7 @@ __glGetMap_size(GLenum target, GLenum query)
switch (query) {
case GL_COEFF:
k = __glMap1d_size(target);
- glGetMapiv(target, GL_ORDER, &order);
+ CALL_GetMapiv(GET_DISPATCH(), (target, GL_ORDER, &order));
/*
** The query above might fail, but then order will be zero anyway.
*/
@@ -96,7 +104,7 @@ __glGetMap_size(GLenum target, GLenum query)
case GL_COEFF:
k = __glMap2d_size(target);
majorMinor[0] = majorMinor[1] = 0;
- glGetMapiv(target, GL_ORDER, majorMinor);
+ CALL_GetMapiv(GET_DISPATCH(), (target, GL_ORDER, majorMinor));
/*
** The query above might fail, but then majorMinor will be zeroes
*/
@@ -169,7 +177,7 @@ __glGetPixelMap_size(GLenum map)
default:
return -1;
}
- glGetIntegerv(query, &size);
+ CALL_GetIntegerv(GET_DISPATCH(), (query, &size));
return size;
}
diff --git a/xorg-server/glx/xfont.c b/xorg-server/glx/xfont.c
index 03ff6d0e8..d01555fc3 100644
--- a/xorg-server/glx/xfont.c
+++ b/xorg-server/glx/xfont.c
@@ -34,9 +34,18 @@
#include "glheader.h"
#include "glxserver.h"
-#include "glxutil.h"
+#include "glxext.h"
+#include "singlesize.h"
#include "unpack.h"
#include "indirect_dispatch.h"
+#include "indirect_size_get.h"
+#include "glapitable.h"
+#include "glapi.h"
+#include "glthread.h"
+#include "dispatch.h"
+
+#include "glxutil.h"
+
#include <GL/gl.h>
#include <pixmapstr.h>
#include <windowstr.h>
@@ -91,8 +100,8 @@ __glXMakeBitmapFromGlyph(FontPtr font, CharInfoPtr pci)
pglyph -= widthPadded;
p += widthPadded;
}
- glBitmap(w, h, -pci->metrics.leftSideBearing, pci->metrics.descent,
- pci->metrics.characterWidth, 0, allocbuf ? allocbuf : buf);
+ CALL_Bitmap(GET_DISPATCH(), (w, h, -pci->metrics.leftSideBearing, pci->metrics.descent,
+ pci->metrics.characterWidth, 0, allocbuf ? allocbuf : buf));
free(allocbuf);
return Success;
@@ -113,12 +122,12 @@ MakeBitmapsFromFont(FontPtr pFont, int first, int count, int list_base)
int rv; /* return value */
int encoding = (FONTLASTROW(pFont) == 0) ? Linear16Bit : TwoD16Bit;
- glPixelStorei(GL_UNPACK_SWAP_BYTES, FALSE);
- glPixelStorei(GL_UNPACK_LSB_FIRST, BITMAP_BIT_ORDER == LSBFirst);
- glPixelStorei(GL_UNPACK_ROW_LENGTH, 0);
- glPixelStorei(GL_UNPACK_SKIP_ROWS, 0);
- glPixelStorei(GL_UNPACK_SKIP_PIXELS, 0);
- glPixelStorei(GL_UNPACK_ALIGNMENT, GLYPHPADBYTES);
+ CALL_PixelStorei(GET_DISPATCH(), (GL_UNPACK_SWAP_BYTES, FALSE));
+ CALL_PixelStorei(GET_DISPATCH(), (GL_UNPACK_LSB_FIRST, BITMAP_BIT_ORDER == LSBFirst));
+ CALL_PixelStorei(GET_DISPATCH(), (GL_UNPACK_ROW_LENGTH, 0));
+ CALL_PixelStorei(GET_DISPATCH(), (GL_UNPACK_SKIP_ROWS, 0));
+ CALL_PixelStorei(GET_DISPATCH(), (GL_UNPACK_SKIP_PIXELS, 0));
+ CALL_PixelStorei(GET_DISPATCH(), (GL_UNPACK_ALIGNMENT, GLYPHPADBYTES));
for (i = 0; i < count; i++) {
chs[0] = (first + i) >> 8; /* high byte is first byte */
chs[1] = first + i;
@@ -129,14 +138,14 @@ MakeBitmapsFromFont(FontPtr pFont, int first, int count, int list_base)
/*
** Define a display list containing just a glBitmap() call.
*/
- glNewList(list_base + i, GL_COMPILE);
+ CALL_NewList(GET_DISPATCH(), (list_base + i, GL_COMPILE));
if (nglyphs) {
rv = __glXMakeBitmapFromGlyph(pFont, pci);
if (rv) {
return rv;
}
}
- glEndList();
+ CALL_EndList(GET_DISPATCH(), ());
}
return Success;
}
@@ -161,7 +170,7 @@ __glXDisp_UseXFont(__GLXclientState * cl, GLbyte * pc)
return error;
}
- glGetIntegerv(GL_LIST_INDEX, (GLint *) &currentListIndex);
+ CALL_GetIntegerv(GET_DISPATCH(), (GL_LIST_INDEX, (GLint *) &currentListIndex));
if (currentListIndex != 0) {
/*
** A display list is currently being made. It is an error