From 33c7c332e7a23877b4f838aec120780954e48454 Mon Sep 17 00:00:00 2001 From: Guillaume Cottenceau Date: Thu, 12 Feb 2004 20:57:57 +0000 Subject: fix #7675: rpmdrake-remove wrongly thought an unrelated package was needed to remove another one because of closures trouble --- rpmdrake | 5 +++-- rpmdrake.spec | 4 +++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/rpmdrake b/rpmdrake index 200a6cb1..59c40b52 100755 --- a/rpmdrake +++ b/rpmdrake @@ -418,6 +418,7 @@ sub run_treeview_dialog { }; my $closure_removal = sub { my @to_remove; + $urpm->{state} = {}; foreach (@_) { $urpm->resolve_rejected(db(), $urpm->{state}, $pkgs->{$_}{pkg}, removed => 1); foreach (keys %{$urpm->{state}{rejected}}) { @@ -528,7 +529,6 @@ or you already installed all of them.")); } }; if ($MODE eq 'remove') { - $urpm->{state} = {}; if ($new_state) { my @remove; slow_func($tree->window, sub { @remove = $closure_removal->(@nodes) }); @@ -547,7 +547,8 @@ or you already installed all of them.")); } else { slow_func($tree->window, sub { @nodes_with_deps = grep { intersection(\@nodes, [ $closure_removal->($_) ]) } - grep { $pkgs->{$_}{selected} } keys %$pkgs }); + grep { $pkgs->{$_}{selected} && !member($_, @nodes) } keys %$pkgs }); + push @nodes_with_deps, @nodes; $deps_msg->(N("Some packages can't be removed"), N("Because of their dependencies, the following package(s) must be\nunselected now:\n\n"), \@nodes, \@nodes_with_deps) or @nodes_with_deps = (); diff --git a/rpmdrake.spec b/rpmdrake.spec index d77c5f9d..82513899 100644 --- a/rpmdrake.spec +++ b/rpmdrake.spec @@ -117,10 +117,12 @@ rm -rf $RPM_BUILD_ROOT %{_sbindir}/park-rpmdrake %changelog -* Wed Feb 11 2004 Guillaume Cottenceau 2.1.2-3mdk +* Thu Feb 12 2004 Guillaume Cottenceau 2.1.2-3mdk - some #7472-alike progressbar sizing fixes - menu: specify that gurpmi.addmedia handles application/x-urpmi-media - fix #7425: center-always or center-on-parent popup windows +- fix #7675: rpmdrake-remove wrongly thought an unrelated package was + needed to remove another one * Wed Jan 21 2004 Guillaume Cottenceau 2.1.2-2mdk - remove unneeded stuff from grpmi/po/*.po -- cgit v1.2.1