From 84d42b9a9ff56418f508666cfa0eddbe1596cc08 Mon Sep 17 00:00:00 2001
From: "Ryan C. Gordon" <icculus@icculus.org>
Date: Tue, 23 Aug 2011 06:27:04 -0400
Subject: [PATCH] Fixed wrong datatype for shaders and programs.

This is a pointer on Mac OS X, so it risked losing data in 64-bit builds.
---
 src/render/opengl/SDL_shaders_gl.c | 8 ++++----
 test/testshader.c                  | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/render/opengl/SDL_shaders_gl.c b/src/render/opengl/SDL_shaders_gl.c
index 2803ee6d..1bf351d7 100644
--- a/src/render/opengl/SDL_shaders_gl.c
+++ b/src/render/opengl/SDL_shaders_gl.c
@@ -34,9 +34,9 @@
 
 typedef struct
 {
-    GLenum program;
-    GLenum vert_shader;
-    GLenum frag_shader;
+    GLhandleARB program;
+    GLhandleARB vert_shader;
+    GLhandleARB frag_shader;
 } GL_ShaderData;
 
 struct GL_ShaderContext
@@ -167,7 +167,7 @@ static const char *shader_source[NUM_SHADERS][2] =
 };
 
 static SDL_bool
-CompileShader(GL_ShaderContext *ctx, GLenum shader, const char *defines, const char *source)
+CompileShader(GL_ShaderContext *ctx, GLhandleARB shader, const char *defines, const char *source)
 {
     GLint status;
     const char *sources[2];
diff --git a/test/testshader.c b/test/testshader.c
index 2c0920f2..6b27c344 100644
--- a/test/testshader.c
+++ b/test/testshader.c
@@ -29,9 +29,9 @@ enum {
 };
 
 typedef struct {
-    GLuint program;
-    GLuint vert_shader;
-    GLuint frag_shader;
+    GLhandleARB program;
+    GLhandleARB vert_shader;
+    GLhandleARB frag_shader;
     const char *vert_source;
     const char *frag_source;
 } ShaderData;
@@ -124,7 +124,7 @@ static PFNGLSHADERSOURCEARBPROC glShaderSourceARB;
 static PFNGLUNIFORM1IARBPROC glUniform1iARB;
 static PFNGLUSEPROGRAMOBJECTARBPROC glUseProgramObjectARB;
 
-static SDL_bool CompileShader(GLenum shader, const char *source)
+static SDL_bool CompileShader(GLhandleARB shader, const char *source)
 {
     GLint status;
 
-- 
2.18.1