diff options
author | Guillaume Cottenceau <gc@mandriva.com> | 2002-08-22 09:33:36 +0000 |
---|---|---|
committer | Guillaume Cottenceau <gc@mandriva.com> | 2002-08-22 09:33:36 +0000 |
commit | 365c59f52ab9d8f804386ea146a7c4273e39b0c4 (patch) | |
tree | 468f9b72c761fbfde0e25676e031de4203d440d2 | |
parent | 787f393c4c82e51c23e031b4533aebb957916b41 (diff) | |
download | rpmdrake-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-x | rpmdrake | 17 |
1 files changed, 5 insertions, 12 deletions
@@ -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 -=-=-=---=-=-=---=-=-=- |