aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuillaume Cottenceau <gc@mandriva.com>2002-08-22 09:33:36 +0000
committerGuillaume Cottenceau <gc@mandriva.com>2002-08-22 09:33:36 +0000
commit365c59f52ab9d8f804386ea146a7c4273e39b0c4 (patch)
tree468f9b72c761fbfde0e25676e031de4203d440d2
parent787f393c4c82e51c23e031b4533aebb957916b41 (diff)
downloadrpmdrake-365c59f52ab9d8f804386ea146a7c4273e39b0c4.tar
rpmdrake-365c59f52ab9d8f804386ea146a7c4273e39b0c4.tar.gz
rpmdrake-365c59f52ab9d8f804386ea146a7c4273e39b0c4.tar.bz2
rpmdrake-365c59f52ab9d8f804386ea146a7c4273e39b0c4.tar.xz
rpmdrake-365c59f52ab9d8f804386ea146a7c4273e39b0c4.zip
- fix real removal of packages (bug introduced when changed
closing/opening of main window) - preliminary support for ok/cancel when telling deps, works only when selecting packages to remove at that time
-rwxr-xr-xrpmdrake17
1 files changed, 5 insertions, 12 deletions
diff --git a/rpmdrake b/rpmdrake
index 142da39d..44bce520 100755
--- a/rpmdrake
+++ b/rpmdrake
@@ -290,8 +290,9 @@ or you already installed all of them."));
my @nodes_with_deps;
my $deps_msg = sub {
my ($title, $msg, $nodes, $nodes_with_deps) = @_;
- @$nodes_with_deps > @$nodes or return;
- interactive_msg($title, $msg . $formatlistpkg->(sort { $a cmp $b } difference2($nodes_with_deps, $nodes)));
+ @$nodes_with_deps > @$nodes or return 1;
+ interactive_msg($title, $msg . $formatlistpkg->(sort { $a cmp $b } difference2($nodes_with_deps, $nodes)),
+ { yesno => 1, text => { yes => _("Ok"), no => _("Cancel") } });
};
if ($MODE eq 'remove') {
if ($new_state) {
@@ -305,7 +306,7 @@ or you already installed all of them."));
} else {
$deps_msg->(_("Some additional packages need to be removed"),
_("Because of their dependencies, the following package(s) also need to be\nremoved:\n\n"),
- \@nodes, \@nodes_with_deps);
+ \@nodes, \@nodes_with_deps) or @nodes_with_deps = ();
}
} else {
slow_func($tree->window,
@@ -495,7 +496,7 @@ _("The following packages have to be removed for others to be upgraded:
Is it ok to continue?", $formatlistpkg->(sort { $a cmp $b } keys %{$urpm->{state}{ask_remove}})), { yesno => 1 })
or return;
}
- $callback_action->($urpm);
+ $callback_action->($urpm, $pkgs);
($urpm, $pkgs, $descriptions) = $pkgs_provider->({ skip_updating_mu => 1 });
$options->{rebuild_tree}->();
};
@@ -721,14 +722,6 @@ sub perform_removal {
sub { $urpm->install('/', \@toremove, {}, {}) });
}
-sub rpmdrake_remove {
- while (1) {
- my $installed = get_installed_pkgs();
- run_treeview_dialog(new urpm, $installed) or return;
- perform_removal(new urpm, $installed);
- }
-}
-
# -=-=-=---=-=-=---=-=-=-- main -=-=-=---=-=-=---=-=-=-