summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gmail.com>2020-06-04 12:25:22 +0000
committerEmmanuele Bassi <ebassi@gmail.com>2020-06-04 12:25:22 +0000
commite54cef8cdd16eeda5c6571ba3eaba310ac9a56f1 (patch)
tree538ec30cf22f7d2ac79fe708b1e631e4479ffc9f
parent92d2741a40bf8f0401ac70c520cc29e221dbcc79 (diff)
parent9ad01b067b71b820b22fb4a08667c87d494e6db6 (diff)
downloadcogl-e54cef8cdd16eeda5c6571ba3eaba310ac9a56f1.tar.gz
Merge branch 'issue-14' into 'cogl-1.22'
Free state after freeing its contents Closes #14 See merge request GNOME/cogl!25
-rw-r--r--cogl/cogl-pipeline.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/cogl/cogl-pipeline.c b/cogl/cogl-pipeline.c
index b2fee10d..e8d6e97d 100644
--- a/cogl/cogl-pipeline.c
+++ b/cogl/cogl-pipeline.c
@@ -492,9 +492,6 @@ _cogl_pipeline_free (CoglPipeline *pipeline)
_cogl_bitmask_destroy (&uniforms_state->changed_mask);
}
- if (pipeline->differences & COGL_PIPELINE_STATE_NEEDS_BIG_STATE)
- g_slice_free (CoglPipelineBigState, pipeline->big_state);
-
if (pipeline->differences & COGL_PIPELINE_STATE_LAYERS)
{
g_list_foreach (pipeline->layer_differences,
@@ -508,6 +505,9 @@ _cogl_pipeline_free (CoglPipeline *pipeline)
if (pipeline->differences & COGL_PIPELINE_STATE_FRAGMENT_SNIPPETS)
_cogl_pipeline_snippet_list_free (&pipeline->big_state->fragment_snippets);
+ if (pipeline->differences & COGL_PIPELINE_STATE_NEEDS_BIG_STATE)
+ g_slice_free (CoglPipelineBigState, pipeline->big_state);
+
g_list_free (pipeline->deprecated_get_layers_list);
recursively_free_layer_caches (pipeline);