mirror of
https://github.com/brl/mutter.git
synced 2025-02-18 14:14:10 +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 char **strings_in,
|
||||||
const GLint *lengths_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 vertex_boilerplate[] = _COGL_VERTEX_SHADER_BOILERPLATE;
|
||||||
static const char fragment_boilerplate[] = _COGL_FRAGMENT_SHADER_BOILERPLATE;
|
static const char fragment_boilerplate[] = _COGL_FRAGMENT_SHADER_BOILERPLATE;
|
||||||
|
|
||||||
const char **strings = g_alloca (sizeof (char *) * (count_in + 3));
|
const char **strings = g_alloca (sizeof (char *) * (count_in + 2));
|
||||||
GLint *lengths = g_alloca (sizeof (GLint) * (count_in + 3));
|
GLint *lengths = g_alloca (sizeof (GLint) * (count_in + 2));
|
||||||
int count = 0;
|
int count = 0;
|
||||||
#ifdef HAVE_COGL_GLES2
|
#ifdef HAVE_COGL_GLES2
|
||||||
char *tex_coords_declaration = NULL;
|
char *tex_coords_declaration = NULL;
|
||||||
@ -204,9 +203,6 @@ _cogl_shader_set_source_with_boilerplate (GLuint shader_gl_handle,
|
|||||||
|
|
||||||
GET_CONTEXT (ctx, NO_RETVAL);
|
GET_CONTEXT (ctx, NO_RETVAL);
|
||||||
|
|
||||||
strings[count] = common_boilerplate;
|
|
||||||
lengths[count++] = sizeof (common_boilerplate) - 1;
|
|
||||||
|
|
||||||
if (shader_gl_type == GL_VERTEX_SHADER)
|
if (shader_gl_type == GL_VERTEX_SHADER)
|
||||||
{
|
{
|
||||||
strings[count] = vertex_boilerplate;
|
strings[count] = vertex_boilerplate;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user