aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/Graphics/Shader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libjin/Graphics/Shader.cpp')
-rw-r--r--src/libjin/Graphics/Shader.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libjin/Graphics/Shader.cpp b/src/libjin/Graphics/Shader.cpp
index 45ad3d6..1af861f 100644
--- a/src/libjin/Graphics/Shader.cpp
+++ b/src/libjin/Graphics/Shader.cpp
@@ -45,7 +45,7 @@ namespace graphics
JSLProgram::JSLProgram(const char* program)
: currentTextureUnit(DEFAULT_TEX_UNIT)
{
- char* fs = (char*)alloca(strlen(program) + strlen(base_shader));
+ char* fs = (char*)calloc(1, strlen(program) + base_size);
formatShader(fs, program);
GLuint shader = glCreateShader(GL_FRAGMENT_SHADER);
glShaderSource(shader, 1, (const GLchar**)&fs, NULL);
@@ -53,6 +53,7 @@ namespace graphics
pid = glCreateProgram();
glAttachShader(pid, shader);
glLinkProgram(pid);
+ free(fs);
}
JSLProgram::~JSLProgram()