From b833d26b3fc7604993b2fb695b6427303b2f30c2 Mon Sep 17 00:00:00 2001 From: Plamena Manolova Date: Wed, 20 Mar 2013 14:25:19 +0000 Subject: [PATCH] Fix multiple snippet interleaving bug Interleaving multiple snippets with different hooks (COGL_SNIPPET_HOOK_VERTEX and COGL_SNIPPET_HOOK_VERTEX_TRANSFORM, for instance) used to cause a bug during shader code generation. Reviewed-by: Neil Roberts (cherry picked from commit 38ca76695d54bbbfe3b940a6d0b2ae879e6fd66b) --- cogl/cogl-pipeline-snippet.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cogl/cogl-pipeline-snippet.c b/cogl/cogl-pipeline-snippet.c index 0e0f62092..8bfa8be54 100644 --- a/cogl/cogl-pipeline-snippet.c +++ b/cogl/cogl-pipeline-snippet.c @@ -100,7 +100,7 @@ _cogl_pipeline_snippet_generate_code (const CoglPipelineSnippetData *data) for (snippet = first_snippet, snippet_num = 0; snippet_num < n_snippets; - snippet = COGL_LIST_NEXT (snippet, list_node), snippet_num++) + snippet = COGL_LIST_NEXT (snippet, list_node)) if (snippet->snippet->hook == data->hook) { const char *source; @@ -180,6 +180,7 @@ _cogl_pipeline_snippet_generate_code (const CoglPipelineSnippetData *data) data->return_variable); g_string_append (data->source_buf, "}\n"); + snippet_num++; } }