aboutsummaryrefslogtreecommitdiffstats
path: root/rpmdrake.pm
diff options
context:
space:
mode:
authorRafael Garcia-Suarez <rgarciasuarez@mandriva.org>2004-08-16 06:52:53 +0000
committerRafael Garcia-Suarez <rgarciasuarez@mandriva.org>2004-08-16 06:52:53 +0000
commitd2e7e1073d2cb5035e5750f47681dfb97b6d4457 (patch)
tree82e36e5dd9c9e8a600d320ea4231d6fdafb21550 /rpmdrake.pm
parent1ab48581fc921fde614a015c3e6e0a9bd1d0a3fc (diff)
downloadrpmdrake-d2e7e1073d2cb5035e5750f47681dfb97b6d4457.tar
rpmdrake-d2e7e1073d2cb5035e5750f47681dfb97b6d4457.tar.gz
rpmdrake-d2e7e1073d2cb5035e5750f47681dfb97b6d4457.tar.bz2
rpmdrake-d2e7e1073d2cb5035e5750f47681dfb97b6d4457.tar.xz
rpmdrake-d2e7e1073d2cb5035e5750f47681dfb97b6d4457.zip
The dialogs to update or add media could freeze when a fatal error occurred.
Diffstat (limited to 'rpmdrake.pm')
-rw-r--r--rpmdrake.pm4
1 files changed, 3 insertions, 1 deletions
diff --git a/rpmdrake.pm b/rpmdrake.pm
index 4965cc3d..6997f533 100644
--- a/rpmdrake.pm
+++ b/rpmdrake.pm
@@ -511,6 +511,8 @@ sub update_sources {
widgets => [ my $pb = gtkset_size_request(Gtk2::ProgressBar->new, 300, -1) ],
);
my @media; @media = @{$options{medialist}} if ref $options{medialist};
+ my $outerfatal = $urpm->{fatal};
+ local $urpm->{fatal} = sub { remove_wait_msg($w); $outerfatal->(@_) };
$urpm->update_media(
%options,
callback => sub {
@@ -621,7 +623,7 @@ sub add_medium_and_check {
if (update_sources_check($urpm, $options, N_("Unable to add medium, errors reported:\n\n%s"), $_[0])) {
$urpm->write_config;
} else {
- $urpm->read_config;
+ $urpm->read_config;
return 0;
}