Index: b/src/cheese-flash.c
===================================================================
--- a/src/cheese-flash.c
+++ b/src/cheese-flash.c
@@ -148,11 +148,14 @@
CheeseFlashPrivate *flash_priv = CHEESE_FLASH_GET_PRIVATE (flash);
GtkWidget *flash_window = GTK_WIDGET (flash_priv->window);
double opacity = gtk_widget_get_opacity (flash_window);
+ guint8 om, nm;
+ om = round(opacity * 255);
+ nm = round(opacity * FLASH_FADE_FACTOR * 255);
/* exponentially decrease */
gtk_widget_set_opacity (flash_window, opacity * FLASH_FADE_FACTOR);
- if (opacity <= FLASH_LOW_THRESHOLD)
+ if (opacity <= FLASH_LOW_THRESHOLD || om == nm)
{
/* the flasher has finished when we reach the quit value */
gtk_widget_hide (flash_window);