From 223f0337805ae2ef3da3e8c92a3acffc5766efbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Tue, 31 Mar 2020 19:42:47 +0200 Subject: [PATCH] clutter/offscreen-effect: Don't ever early out out of post paint If we would, we'd miss popping the framebuffer from the pant context framebuffer stack. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1166 --- clutter/clutter/clutter-offscreen-effect.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/clutter/clutter/clutter-offscreen-effect.c b/clutter/clutter/clutter-offscreen-effect.c index ac4ea98e2..0b81c67a8 100644 --- a/clutter/clutter/clutter-offscreen-effect.c +++ b/clutter/clutter/clutter-offscreen-effect.c @@ -446,13 +446,16 @@ clutter_offscreen_effect_post_paint (ClutterEffect *effect, ClutterOffscreenEffectPrivate *priv = self->priv; CoglFramebuffer *framebuffer; - if (priv->offscreen == NULL || - priv->target == NULL || - priv->actor == NULL) - return; + g_warn_if_fail (priv->offscreen); + g_warn_if_fail (priv->target); + g_warn_if_fail (priv->actor); /* Restore the previous opacity override */ - clutter_actor_set_opacity_override (priv->actor, priv->old_opacity_override); + if (priv->actor) + { + clutter_actor_set_opacity_override (priv->actor, + priv->old_opacity_override); + } framebuffer = clutter_paint_context_get_framebuffer (paint_context); cogl_framebuffer_pop_matrix (framebuffer);