summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErik Faye-Lund <erik.faye-lund@collabora.com>2023-02-27 12:32:09 +0100
committerErik Faye-Lund <erik.faye-lund@collabora.com>2023-03-06 09:56:10 +0100
commitbcb82b195ffcc68a97fb79ad2f2ce7086dec7e62 (patch)
tree86726d81a119ef259bad181fc7115e8dd99e281d
parentb82f1307401f9f4fba902154fd04783da3173dcf (diff)
downloadmesa-demos-bcb82b195ffcc68a97fb79ad2f2ce7086dec7e62.tar.gz
util: use gl2 program validation
There's a glValidateProgram function in GL2 and later; let's use that instead of trying to use the ARB function and falling back to nothing. Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-rw-r--r--src/util/shaderutil.c15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/util/shaderutil.c b/src/util/shaderutil.c
index 85d033ce..4842ab9f 100644
--- a/src/util/shaderutil.c
+++ b/src/util/shaderutil.c
@@ -32,7 +32,7 @@ PFNGLLINKPROGRAMPROC LinkProgram = NULL;
PFNGLUSEPROGRAMPROC UseProgram = NULL;
PFNGLGETPROGRAMIVPROC GetProgramiv = NULL;
PFNGLGETPROGRAMINFOLOGPROC GetProgramInfoLog = NULL;
-PFNGLVALIDATEPROGRAMARBPROC ValidateProgramARB = NULL;
+PFNGLVALIDATEPROGRAMPROC ValidateProgram = NULL;
PFNGLUNIFORM1IPROC Uniform1i = NULL;
PFNGLUNIFORM1FVPROC Uniform1fv = NULL;
PFNGLUNIFORM2FVPROC Uniform2fv = NULL;
@@ -42,12 +42,6 @@ PFNGLUNIFORMMATRIX4FVPROC UniformMatrix4fv = NULL;
PFNGLGETACTIVEATTRIBPROC GetActiveAttrib = NULL;
PFNGLGETATTRIBLOCATIONPROC GetAttribLocation = NULL;
-static void GLAPIENTRY
-fake_ValidateProgram(GLuint prog)
-{
- (void) prog;
-}
-
GLboolean
ShadersSupported(void)
{
@@ -64,8 +58,7 @@ ShadersSupported(void)
UseProgram = glUseProgram;
GetProgramiv = glGetProgramiv;
GetProgramInfoLog = glGetProgramInfoLog;
- ValidateProgramARB = (GLAD_GL_ARB_shader_objects)
- ? glValidateProgramARB : fake_ValidateProgram;
+ ValidateProgram = glValidateProgram;
Uniform1i = glUniform1i;
Uniform1fv = glUniform1fv;
Uniform2fv = glUniform2fv;
@@ -91,7 +84,7 @@ ShadersSupported(void)
UseProgram = glUseProgramObjectARB;
GetProgramiv = glGetObjectParameterivARB;
GetProgramInfoLog = glGetInfoLogARB;
- ValidateProgramARB = glValidateProgramARB;
+ ValidateProgram = glValidateProgramARB;
Uniform1i = glUniform1iARB;
Uniform1fv = glUniform1fvARB;
Uniform2fv = glUniform2fvARB;
@@ -268,7 +261,7 @@ GLboolean
ValidateShaderProgram(GLuint program)
{
GLint stat;
- ValidateProgramARB(program);
+ ValidateProgram(program);
GetProgramiv(program, GL_VALIDATE_STATUS, &stat);
if (!stat) {