diff --git a/gtk/gtkcssimage.c b/gtk/gtkcssimage.c index 3df759892a..999c54889d 100644 --- a/gtk/gtkcssimage.c +++ b/gtk/gtkcssimage.c @@ -75,7 +75,12 @@ gtk_css_image_real_transition (GtkCssImage *start, guint property_id, double progress) { - return _gtk_css_image_cross_fade_new (start, end, progress); + if (progress <= 0.0) + return g_object_ref (start); + else if (progress >= 1.0) + return end ? g_object_ref (end) : NULL; + else + return _gtk_css_image_cross_fade_new (start, end, progress); } static void