From 281101d942c781b348db37fd15c3d45f27c84a11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Thu, 14 Apr 2016 17:18:42 +0200 Subject: [PATCH] st: Do not try to unref NULL CoglObjects https://bugzilla.gnome.org/show_bug.cgi?id=765061 --- src/st/st-private.c | 5 ++++- src/st/st-texture-cache.c | 8 ++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/st/st-private.c b/src/st/st-private.c index d40eceb86..e5a27019b 100644 --- a/src/st/st-private.c +++ b/src/st/st-private.c @@ -395,7 +395,10 @@ _st_create_shadow_pipeline (StShadow *shadow_spec, pipeline = cogl_pipeline_copy (shadow_pipeline_template); cogl_pipeline_set_layer_texture (pipeline, 0, texture); - cogl_object_unref (texture); + + if (texture) + cogl_object_unref (texture); + return pipeline; } diff --git a/src/st/st-texture-cache.c b/src/st/st-texture-cache.c index 5cc48e3fd..bd864d06a 100644 --- a/src/st/st-texture-cache.c +++ b/src/st/st-texture-cache.c @@ -648,8 +648,12 @@ st_texture_cache_reset_texture (StTextureCachePropertyBind *bind, cairo_image_surface_get_stride (surface), cairo_image_surface_get_data (surface), NULL)); - clutter_texture_set_cogl_texture (bind->texture, texdata); - cogl_object_unref (texdata); + + if (texdata) + { + clutter_texture_set_cogl_texture (bind->texture, texdata); + cogl_object_unref (texdata); + } clutter_actor_set_opacity (CLUTTER_ACTOR (bind->texture), 255); }