mirror of
https://github.com/brl/mutter.git
synced 2024-12-27 13:22:15 +00:00
cogl-shader.c: Don't add the common boilerplate twice
In 6246c2bd6
I moved the code to add the boilerplate to a shader to a
separate function and also made it so that the common boilerplate is
added as a separate string to glShaderSource. However I didn't notice
that the #define for the vertex and fragment shaders already includes
the common part so it was being added twice. Mesa seems to accept this
but it was causing problems on the IMG driver because COGL_VERSION was
defined twice.
This commit is contained in:
parent
ae300dc8e0
commit
d046df8e6f
@ -191,12 +191,11 @@ _cogl_shader_set_source_with_boilerplate (GLuint shader_gl_handle,
|
||||
const char **strings_in,
|
||||
const GLint *lengths_in)
|
||||
{
|
||||
static const char common_boilerplate[] = _COGL_COMMON_SHADER_BOILERPLATE;
|
||||
static const char vertex_boilerplate[] = _COGL_VERTEX_SHADER_BOILERPLATE;
|
||||
static const char fragment_boilerplate[] = _COGL_FRAGMENT_SHADER_BOILERPLATE;
|
||||
|
||||
const char **strings = g_alloca (sizeof (char *) * (count_in + 3));
|
||||
GLint *lengths = g_alloca (sizeof (GLint) * (count_in + 3));
|
||||
const char **strings = g_alloca (sizeof (char *) * (count_in + 2));
|
||||
GLint *lengths = g_alloca (sizeof (GLint) * (count_in + 2));
|
||||
int count = 0;
|
||||
#ifdef HAVE_COGL_GLES2
|
||||
char *tex_coords_declaration = NULL;
|
||||
@ -204,9 +203,6 @@ _cogl_shader_set_source_with_boilerplate (GLuint shader_gl_handle,
|
||||
|
||||
GET_CONTEXT (ctx, NO_RETVAL);
|
||||
|
||||
strings[count] = common_boilerplate;
|
||||
lengths[count++] = sizeof (common_boilerplate) - 1;
|
||||
|
||||
if (shader_gl_type == GL_VERTEX_SHADER)
|
||||
{
|
||||
strings[count] = vertex_boilerplate;
|
||||
|
Loading…
Reference in New Issue
Block a user