aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/gl.c134
-rw-r--r--src/window/window.c1
2 files changed, 68 insertions, 67 deletions
diff --git a/src/gl.c b/src/gl.c
index 5bcc68e..90880c4 100644
--- a/src/gl.c
+++ b/src/gl.c
@@ -27,71 +27,71 @@ int mgl_gl_load(mgl_gl *self) {
}
dlsym_assign required_dlsym[] = {
- { &self->glXCreateNewContext, "glXCreateNewContext" },
- { &self->glXMakeContextCurrent, "glXMakeContextCurrent" },
- { &self->glXDestroyContext, "glXDestroyContext" },
- { &self->glXSwapBuffers, "glXSwapBuffers" },
- { &self->glXChooseFBConfig, "glXChooseFBConfig" },
- { &self->glXGetVisualFromFBConfig, "glXGetVisualFromFBConfig" },
+ { (void**)&self->glXCreateNewContext, "glXCreateNewContext" },
+ { (void**)&self->glXMakeContextCurrent, "glXMakeContextCurrent" },
+ { (void**)&self->glXDestroyContext, "glXDestroyContext" },
+ { (void**)&self->glXSwapBuffers, "glXSwapBuffers" },
+ { (void**)&self->glXChooseFBConfig, "glXChooseFBConfig" },
+ { (void**)&self->glXGetVisualFromFBConfig, "glXGetVisualFromFBConfig" },
- { &self->glViewport, "glViewport" },
- { &self->glScissor, "glScissor" },
- { &self->glClearColor, "glClearColor" },
- { &self->glClear, "glClear" },
- { &self->glEnable, "glEnable" },
- { &self->glBlendFunc, "glBlendFunc" },
- { &self->glGenTextures, "glGenTextures" },
- { &self->glDeleteTextures, "glDeleteTextures" },
- { &self->glTexImage2D, "glTexImage2D" },
- { &self->glTexSubImage2D, "glTexSubImage2D" },
- { &self->glBindTexture, "glBindTexture" },
- { &self->glTexParameteri, "glTexParameteri" },
- { &self->glHint, "glHint" },
- { &self->glBegin, "glBegin" },
- { &self->glEnd, "glEnd" },
- { &self->glVertex3f, "glVertex3f" },
- { &self->glColor4ub, "glColor4ub" },
- { &self->glTexCoord2f, "glTexCoord2f" },
- { &self->glOrtho, "glOrtho" },
- { &self->glMatrixMode, "glMatrixMode" },
- { &self->glPushMatrix, "glPushMatrix" },
- { &self->glPopMatrix, "glPopMatrix" },
- { &self->glLoadIdentity, "glLoadIdentity" },
- { &self->glLoadMatrixf, "glLoadMatrixf" },
- { &self->glTranslatef, "glTranslatef" },
- { &self->glRotatef, "glRotatef" },
- { &self->glGenBuffers, "glGenBuffers" },
- { &self->glBindBuffer, "glBindBuffer" },
- { &self->glDeleteBuffers, "glDeleteBuffers" },
- { &self->glBufferData, "glBufferData" },
- { &self->glBufferSubData, "glBufferSubData" },
- { &self->glDrawArrays, "glDrawArrays" },
- { &self->glEnableClientState, "glEnableClientState" },
- { &self->glVertexPointer, "glVertexPointer" },
- { &self->glColorPointer, "glColorPointer" },
- { &self->glTexCoordPointer, "glTexCoordPointer" },
- { &self->glCompileShader, "glCompileShader" },
- { &self->glCreateProgram, "glCreateProgram" },
- { &self->glCreateShader, "glCreateShader" },
- { &self->glDeleteProgram, "glDeleteProgram" },
- { &self->glDeleteShader, "glDeleteShader" },
- { &self->glGetShaderiv, "glGetShaderiv" },
- { &self->glGetShaderInfoLog, "glGetShaderInfoLog" },
- { &self->glGetProgramiv, "glGetProgramiv" },
- { &self->glGetProgramInfoLog, "glGetProgramInfoLog" },
- { &self->glLinkProgram, "glLinkProgram" },
- { &self->glShaderSource, "glShaderSource" },
- { &self->glUseProgram, "glUseProgram" },
- { &self->glAttachShader, "glAttachShader" },
- { &self->glGetUniformLocation, "glGetUniformLocation" },
- { &self->glUniform1f, "glUniform1f" },
- { &self->glUniform2f, "glUniform2f" },
- { &self->glGetError, "glGetError" },
- { &self->glGetString, "glGetString" },
- { &self->glGetIntegerv, "glGetIntegerv" },
- { &self->glPixelStorei, "glPixelStorei" },
- { &self->glFlush, "glFlush" },
- { &self->glFinish, "glFinish" },
+ { (void**)&self->glViewport, "glViewport" },
+ { (void**)&self->glScissor, "glScissor" },
+ { (void**)&self->glClearColor, "glClearColor" },
+ { (void**)&self->glClear, "glClear" },
+ { (void**)&self->glEnable, "glEnable" },
+ { (void**)&self->glBlendFunc, "glBlendFunc" },
+ { (void**)&self->glGenTextures, "glGenTextures" },
+ { (void**)&self->glDeleteTextures, "glDeleteTextures" },
+ { (void**)&self->glTexImage2D, "glTexImage2D" },
+ { (void**)&self->glTexSubImage2D, "glTexSubImage2D" },
+ { (void**)&self->glBindTexture, "glBindTexture" },
+ { (void**)&self->glTexParameteri, "glTexParameteri" },
+ { (void**)&self->glHint, "glHint" },
+ { (void**)&self->glBegin, "glBegin" },
+ { (void**)&self->glEnd, "glEnd" },
+ { (void**)&self->glVertex3f, "glVertex3f" },
+ { (void**)&self->glColor4ub, "glColor4ub" },
+ { (void**)&self->glTexCoord2f, "glTexCoord2f" },
+ { (void**)&self->glOrtho, "glOrtho" },
+ { (void**)&self->glMatrixMode, "glMatrixMode" },
+ { (void**)&self->glPushMatrix, "glPushMatrix" },
+ { (void**)&self->glPopMatrix, "glPopMatrix" },
+ { (void**)&self->glLoadIdentity, "glLoadIdentity" },
+ { (void**)&self->glLoadMatrixf, "glLoadMatrixf" },
+ { (void**)&self->glTranslatef, "glTranslatef" },
+ { (void**)&self->glRotatef, "glRotatef" },
+ { (void**)&self->glGenBuffers, "glGenBuffers" },
+ { (void**)&self->glBindBuffer, "glBindBuffer" },
+ { (void**)&self->glDeleteBuffers, "glDeleteBuffers" },
+ { (void**)&self->glBufferData, "glBufferData" },
+ { (void**)&self->glBufferSubData, "glBufferSubData" },
+ { (void**)&self->glDrawArrays, "glDrawArrays" },
+ { (void**)&self->glEnableClientState, "glEnableClientState" },
+ { (void**)&self->glVertexPointer, "glVertexPointer" },
+ { (void**)&self->glColorPointer, "glColorPointer" },
+ { (void**)&self->glTexCoordPointer, "glTexCoordPointer" },
+ { (void**)&self->glCompileShader, "glCompileShader" },
+ { (void**)&self->glCreateProgram, "glCreateProgram" },
+ { (void**)&self->glCreateShader, "glCreateShader" },
+ { (void**)&self->glDeleteProgram, "glDeleteProgram" },
+ { (void**)&self->glDeleteShader, "glDeleteShader" },
+ { (void**)&self->glGetShaderiv, "glGetShaderiv" },
+ { (void**)&self->glGetShaderInfoLog, "glGetShaderInfoLog" },
+ { (void**)&self->glGetProgramiv, "glGetProgramiv" },
+ { (void**)&self->glGetProgramInfoLog, "glGetProgramInfoLog" },
+ { (void**)&self->glLinkProgram, "glLinkProgram" },
+ { (void**)&self->glShaderSource, "glShaderSource" },
+ { (void**)&self->glUseProgram, "glUseProgram" },
+ { (void**)&self->glAttachShader, "glAttachShader" },
+ { (void**)&self->glGetUniformLocation, "glGetUniformLocation" },
+ { (void**)&self->glUniform1f, "glUniform1f" },
+ { (void**)&self->glUniform2f, "glUniform2f" },
+ { (void**)&self->glGetError, "glGetError" },
+ { (void**)&self->glGetString, "glGetString" },
+ { (void**)&self->glGetIntegerv, "glGetIntegerv" },
+ { (void**)&self->glPixelStorei, "glPixelStorei" },
+ { (void**)&self->glFlush, "glFlush" },
+ { (void**)&self->glFinish, "glFinish" },
{ NULL, NULL }
};
@@ -105,9 +105,9 @@ int mgl_gl_load(mgl_gl *self) {
}
const dlsym_assign optional_dlsym[] = {
- { &self->glXSwapIntervalEXT, "glXSwapIntervalEXT" },
- { &self->glXSwapIntervalMESA, "glXGetSwapIntervalMESA" },
- { &self->glXSwapIntervalSGI, "glXSwapIntervalSGI" },
+ { (void**)&self->glXSwapIntervalEXT, "glXSwapIntervalEXT" },
+ { (void**)&self->glXSwapIntervalMESA, "glXGetSwapIntervalMESA" },
+ { (void**)&self->glXSwapIntervalSGI, "glXSwapIntervalSGI" },
{ NULL, NULL }
};
diff --git a/src/window/window.c b/src/window/window.c
index 05d643d..17066a0 100644
--- a/src/window/window.c
+++ b/src/window/window.c
@@ -255,6 +255,7 @@ void x11_context_deinit(x11_context *self) {
}
if(self->glx_context) {
+ context->gl.glXMakeContextCurrent(context->connection, None, None, NULL);
context->gl.glXDestroyContext(context->connection, self->glx_context);
self->glx_context = NULL;
}