rem: if (percentage > 0 && totem->buffer_dialog == NULL)
add: if (percentage > 0 && percentage < 100 && totem->buffer_dialog == NULL)
context: on_buffering_event (BaconVideoWidget *bvw, int percentage, Totem *totem){	char *msg;	if (percentage > 0 && totem->buffer_dialog == NULL)	{		GtkWidget *image, *hbox;		totem->buffer_dialog = gtk_dialog_new_with_buttons (_("Buffering"),				GTK_WINDOW (totem->win),				GTK_DIALOG_DESTROY_WITH_PARENT,				GTK_STOCK_CANCEL,				GTK_RESPONSE_REJECT,				NULL);		gtk_dialog_set_has_separator (GTK_DIALOG(totem->buffer_dialog),				FALSE);		gtk_window_set_modal (GTK_WINDOW (totem->buffer_dialog), TRUE);		gtk_container_set_border_width			(GTK_CONTAINER (GTK_DIALOG(totem->buffer_dialog)->vbox),			 8);		hbox = gtk_hbox_new (FALSE, 12);		gtk_container_add			(GTK_CONTAINER (GTK_DIALOG(totem->buffer_dialog)->vbox),			 hbox);		image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_INFO,				GTK_ICON_SIZE_DIALOG);		gtk_container_add (GTK_CONTAINER (hbox), image);		msg = g_strdup_printf (_("Buffering: %d%%"), percentage);		totem->buffer_label = gtk_label_new (msg);		g_free (msg);		gtk_container_add (GTK_CONTAINER(hbox), totem->buffer_label);		g_signal_connect (G_OBJECT (totem->buffer_dialog),				"response",				G_CALLBACK (on_buffering_cancel_event),				totem);		g_signal_connect (G_OBJECT (totem->buffer_dialog),				"delete-event",				G_CALLBACK (on_buffering_cancel_event),				totem);		gtk_widget_show_all (totem->buffer_dialog);		long_action ();	} else if (percentage == 100) {		if (totem->buffer_dialog != NULL)			gtk_widget_destroy (totem->buffer_dialog);		totem->buffer_dialog = NULL;		totem->buffer_label = NULL;	} else if (totem->buffer_label != NULL) {		msg = g_strdup_printf (_("Buffering: %d%%"), percentage);		gtk_label_set_text (GTK_LABEL (totem->buffer_label), msg);		g_free (msg);		long_action ();	}}