From fb670a753d9ce829aeab0b562396567908ddc6a4 Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Wed, 23 May 2007 15:44:33 +0000 Subject: - progress bar wait_message: ensure it doesn't go crazy when asked to update with the same fraction (eg #30090) - also do hide the progress bar (maybe we should not hide it?) --- perl-install/NEWS | 2 ++ perl-install/interactive/gtk.pm | 14 +++++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) (limited to 'perl-install') diff --git a/perl-install/NEWS b/perl-install/NEWS index 7d347b54b..aee2bbc19 100644 --- a/perl-install/NEWS +++ b/perl-install/NEWS @@ -1,3 +1,5 @@ +- progress bar wait_message: ensure it doesn't go crazy when asked to update + with the same fraction (eg #30090) - diskdrake: o when formatting ntfs don't zero partition (#30928) diff --git a/perl-install/interactive/gtk.pm b/perl-install/interactive/gtk.pm index 335bdda41..59b0fb288 100644 --- a/perl-install/interactive/gtk.pm +++ b/perl-install/interactive/gtk.pm @@ -862,12 +862,16 @@ sub wait_message_with_progress_bar { if ($total) { $progress or internal_error('You must first give some text to display'); - $progress->set_fraction($current / $total); - $progress->show; - $displayed = 0; - mygtk2::flush() while !$displayed; + my $fraction = min(1, $current / $total); + if ($fraction != $progress->get_fraction) { + $progress->set_fraction($fraction); + $progress->show; + $displayed = 0; + mygtk2::flush() while !$displayed; + } } else { - $progress->hide if !$total; + $progress->hide; + mygtk2::flush(); } }; } -- cgit v1.2.1