diff options
author | Georges Basile Stavracas Neto <georges.stavracas@gmail.com> | 2020-01-07 11:57:02 -0300 |
---|---|---|
committer | Georges Basile Stavracas Neto <georges.stavracas@gmail.com> | 2020-01-07 14:02:25 -0300 |
commit | 3958e75ed2a9afb5d32c59b017691e3ed2289ee2 (patch) | |
tree | ba5e3a83e1b9168843b8e1d89a465241e3518ad7 | |
parent | 802309caf9b2de4ac0efb2eb720a195c0c3f0c12 (diff) | |
download | mutter-3958e75ed2a9afb5d32c59b017691e3ed2289ee2.tar.gz |
clutter/offscreen-effect: Use g_clear_pointer for cleanup
It does the exact same checks, and saves us a few lines of code.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/992
-rw-r--r-- | clutter/clutter/clutter-offscreen-effect.c | 30 |
1 files changed, 6 insertions, 24 deletions
diff --git a/clutter/clutter/clutter-offscreen-effect.c b/clutter/clutter/clutter-offscreen-effect.c index 131a42a8b..13390dad8 100644 --- a/clutter/clutter/clutter-offscreen-effect.c +++ b/clutter/clutter/clutter-offscreen-effect.c @@ -118,11 +118,7 @@ clutter_offscreen_effect_set_actor (ClutterActorMeta *meta, meta_class->set_actor (meta, actor); /* clear out the previous state */ - if (priv->offscreen != NULL) - { - cogl_object_unref (priv->offscreen); - priv->offscreen = NULL; - } + g_clear_pointer (&priv->offscreen, cogl_object_unref); /* we keep a back pointer here, to avoid going through the ActorMeta */ priv->actor = clutter_actor_meta_get_actor (meta); @@ -198,17 +194,8 @@ update_fbo (ClutterEffect *effect, ensure_pipeline_filter_for_scale (self, resource_scale); } - if (priv->texture != NULL) - { - cogl_object_unref (priv->texture); - priv->texture = NULL; - } - - if (priv->offscreen != NULL) - { - cogl_object_unref (priv->offscreen); - priv->offscreen = NULL; - } + g_clear_pointer (&priv->texture, cogl_object_unref); + g_clear_pointer (&priv->offscreen, cogl_object_unref); priv->texture = clutter_offscreen_effect_create_texture (self, target_width, target_height); @@ -502,14 +489,9 @@ clutter_offscreen_effect_finalize (GObject *gobject) ClutterOffscreenEffect *self = CLUTTER_OFFSCREEN_EFFECT (gobject); ClutterOffscreenEffectPrivate *priv = self->priv; - if (priv->offscreen) - cogl_object_unref (priv->offscreen); - - if (priv->target) - cogl_object_unref (priv->target); - - if (priv->texture) - cogl_object_unref (priv->texture); + g_clear_pointer (&priv->offscreen, cogl_object_unref); + g_clear_pointer (&priv->texture, cogl_object_unref); + g_clear_pointer (&priv->target, cogl_object_unref); G_OBJECT_CLASS (clutter_offscreen_effect_parent_class)->finalize (gobject); } |