# HG changeset patch # User Sam Lantinga # Date 1083350010 0 # Node ID 9f6ad2286011dedbf95e3d41046de3ba8ba56468 # Parent 20d3a599f6018c31b9b7afa83cabe9cc6dedad9a Date: Wed, 28 Apr 2004 16:52:41 -0400 From: "Damien A" Subject: testdyngl fix The test program you included in the latest version of SDL crashes on startup in Window (XP). The reason for this is that OpenGL functions on Windows use the __stdcall calling convention, not the C convention. Placing APIENTRY infront of the * operator solves this problem. diff -r 20d3a599f601 -r 9f6ad2286011 test/testdyngl.c --- a/test/testdyngl.c Fri Apr 23 14:00:08 2004 +0000 +++ b/test/testdyngl.c Fri Apr 30 18:33:30 2004 +0000 @@ -39,23 +39,23 @@ typedef struct { - void(*glBegin)(GLenum); - void(*glEnd)(); - void(*glVertex3f)(GLfloat, GLfloat, GLfloat); - void(*glClearColor)(GLfloat, GLfloat, GLfloat, GLfloat); - void(*glClear)(GLbitfield); - void(*glDisable)(GLenum); - void(*glEnable)(GLenum); - void(*glColor4ub)(GLubyte,GLubyte,GLubyte,GLubyte); - void(*glPointSize)(GLfloat); - void(*glHint)(GLenum,GLenum); - void(*glBlendFunc)(GLenum,GLenum); - void(*glMatrixMode)(GLenum); - void(*glLoadIdentity)(); - void(*glOrtho)(GLdouble,GLdouble,GLdouble,GLdouble,GLdouble,GLdouble); - void(*glRotatef)(GLfloat,GLfloat,GLfloat,GLfloat); - void(*glViewport)(GLint,GLint,GLsizei,GLsizei); - void(*glFogf)(GLenum,GLfloat); + void(APIENTRY*glBegin)(GLenum); + void(APIENTRY*glEnd)(); + void(APIENTRY*glVertex3f)(GLfloat, GLfloat, GLfloat); + void(APIENTRY*glClearColor)(GLfloat, GLfloat, GLfloat, GLfloat); + void(APIENTRY*glClear)(GLbitfield); + void(APIENTRY*glDisable)(GLenum); + void(APIENTRY*glEnable)(GLenum); + void(APIENTRY*glColor4ub)(GLubyte,GLubyte,GLubyte,GLubyte); + void(APIENTRY*glPointSize)(GLfloat); + void(APIENTRY*glHint)(GLenum,GLenum); + void(APIENTRY*glBlendFunc)(GLenum,GLenum); + void(APIENTRY*glMatrixMode)(GLenum); + void(APIENTRY*glLoadIdentity)(); + void(APIENTRY*glOrtho)(GLdouble,GLdouble,GLdouble,GLdouble,GLdouble,GLdouble); + void(APIENTRY*glRotatef)(GLfloat,GLfloat,GLfloat,GLfloat); + void(APIENTRY*glViewport)(GLint,GLint,GLsizei,GLsizei); + void(APIENTRY*glFogf)(GLenum,GLfloat); } glfuncs;