diff --git a/clutter/clutter/clutter-actor-meta.c b/clutter/clutter/clutter-actor-meta.c index eba098584a0b724620fe1c9e2d490b65705cb4b2..f90c44e9d94a4d6e4f4f64d86755c91a6880c13d 100644 --- a/clutter/clutter/clutter-actor-meta.c +++ b/clutter/clutter/clutter-actor-meta.c @@ -88,6 +88,10 @@ static void clutter_actor_meta_real_set_actor (ClutterActorMeta *meta, ClutterActor *actor) { + g_warn_if_fail (!meta->priv->actor || + !CLUTTER_ACTOR_IN_PAINT (meta->priv->actor)); + g_warn_if_fail (!actor || !CLUTTER_ACTOR_IN_PAINT (actor)); + if (meta->priv->actor == actor) return; @@ -293,6 +297,9 @@ clutter_actor_meta_set_enabled (ClutterActorMeta *meta, { g_return_if_fail (CLUTTER_IS_ACTOR_META (meta)); + g_warn_if_fail (!meta->priv->actor || + !CLUTTER_ACTOR_IN_PAINT (meta->priv->actor)); + is_enabled = !!is_enabled; if (meta->priv->is_enabled == is_enabled) diff --git a/clutter/clutter/clutter-offscreen-effect.c b/clutter/clutter/clutter-offscreen-effect.c index ac4ea98e259deab3411b058bb918d8868d47a64a..0b81c67a8128aa54ba7c6f1415467dfc2b3ca67b 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);