diff options
Diffstat (limited to 'external/libgltf/pathces/append_shader_version.patch')
-rw-r--r-- | external/libgltf/pathces/append_shader_version.patch | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/external/libgltf/pathces/append_shader_version.patch b/external/libgltf/pathces/append_shader_version.patch new file mode 100644 index 000000000000..27f0cc66ee36 --- /dev/null +++ b/external/libgltf/pathces/append_shader_version.patch @@ -0,0 +1,37 @@ +diff -ur libgltf.org/src/Shaders.cpp libgltf/src/Shaders.cpp +--- libgltf.org/src/Shaders.cpp 2014-08-18 09:19:48.323955939 +0200 ++++ libgltf/src/Shaders.cpp 2014-08-18 09:20:46.711953465 +0200 +@@ -11,6 +11,7 @@ + + #include <GL/glew.h> + #include <cstdio> ++#include <cstring> + + namespace libgltf + { +@@ -166,7 +167,24 @@ + unsigned int shaderId) + { + GLint iGLSize = iSize; +- glShaderSource(shaderId, 1, &pShader, &iGLSize); ++ if( strstr(pShader,"#version") == 0 ) ++ { ++ const GLchar* aSources[] = { ++ "#version 130\n", ++ pShader, ++ }; ++ ++ const GLint aSizes[] = { ++ strlen("#version 130\n"), ++ iGLSize, ++ }; ++ ++ glShaderSource(shaderId, 2, &aSources[0], &aSizes[0]); ++ } ++ else ++ { ++ glShaderSource(shaderId, 1, &pShader, &iGLSize); ++ } + glCompileShader(shaderId); + int iStatus = 0; + glGetShaderiv(shaderId, GL_COMPILE_STATUS, &iStatus); |