From 595d56cc866638f371626cc1d0137a6a54a7d0f8 Mon Sep 17 00:00:00 2001 From: Jamey Sharp Date: Mon, 25 Apr 2016 22:06:40 -0700 Subject: [PATCH] glShaderSource must not change compile status. OpenGL 4.5 Core Profile section 7.1, in the documentation for CompileShader, says: "Changing the source code of a shader object with ShaderSource does not change its compile status or the compiled shader code." According to Karol Herbst, the game "Divinity: Original Sin - Enhanced Edition" depends on this odd quirk of the spec. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93551 Signed-off-by: Jamey Sharp Reviewed-by: Ian Romanick Reviewed-by: Kenneth Graunke Reviewed-by: Timothy Arceri --- src/mesa/main/shaderapi.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c index b972f8e495c..8c1fba8b26f 100644 --- a/src/mesa/main/shaderapi.c +++ b/src/mesa/main/shaderapi.c @@ -949,7 +949,6 @@ shader_source(struct gl_shader *sh, const GLchar *source) /* free old shader source string and install new one */ free((void *)sh->Source); sh->Source = source; - sh->CompileStatus = GL_FALSE; #ifdef DEBUG sh->SourceChecksum = _mesa_str_checksum(sh->Source); #endif -- 2.30.2