summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIlia Mirkin <[email protected]>2016-02-06 17:07:59 -0500
committerIlia Mirkin <[email protected]>2016-02-07 17:23:57 -0500
commitac57577e29643a59a33a7c2b01def2e297db3448 (patch)
treebc02894522670bd2c7813f89113536f61e4d4e85
parent04c2ca5038fbfd6848cdc4f44d88b55a6047d579 (diff)
glsl: make sure builtins are initialized before getting the shader
The builtin function shader is part of the builtin state, released when glReleaseShaderCompiler is called. We must ensure that the builtins have been (re)initialized before attempting to link with the builtin shader. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Timothy Arceri <[email protected]> Tested-by: Rob Herring <[email protected]> Cc: [email protected]
-rw-r--r--src/compiler/glsl/linker.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp
index 4776ffa6acd..f1ac53abb0a 100644
--- a/src/compiler/glsl/linker.cpp
+++ b/src/compiler/glsl/linker.cpp
@@ -2125,6 +2125,7 @@ link_intrastage_shaders(void *mem_ctx,
if (ok) {
memcpy(linking_shaders, shader_list, num_shaders * sizeof(gl_shader *));
+ _mesa_glsl_initialize_builtin_functions();
linking_shaders[num_shaders] = _mesa_glsl_get_builtin_function_shader();
ok = link_function_calls(prog, linked, linking_shaders, num_shaders + 1);