aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael Garcia-Suarez <rgarciasuarez@mandriva.org>2004-08-20 14:32:57 +0000
committerRafael Garcia-Suarez <rgarciasuarez@mandriva.org>2004-08-20 14:32:57 +0000
commit3d1dc705c1b0dff9c1f8ef10e9ac4836a4c04b51 (patch)
tree2d7f639678c81ed30d70409a469a30429a2c9d95
parentce257f7070debca655f8a6287b9d8d3b88f7442e (diff)
downloadrpmdrake-3d1dc705c1b0dff9c1f8ef10e9ac4836a4c04b51.tar
rpmdrake-3d1dc705c1b0dff9c1f8ef10e9ac4836a4c04b51.tar.gz
rpmdrake-3d1dc705c1b0dff9c1f8ef10e9ac4836a4c04b51.tar.bz2
rpmdrake-3d1dc705c1b0dff9c1f8ef10e9ac4836a4c04b51.tar.xz
rpmdrake-3d1dc705c1b0dff9c1f8ef10e9ac4836a4c04b51.zip
Don't die when trying to remove a package that can't be removed (due
to the dependency on basesystem)
-rwxr-xr-xrpmdrake9
1 files changed, 6 insertions, 3 deletions
diff --git a/rpmdrake b/rpmdrake
index 1110497f..44c2e404 100755
--- a/rpmdrake
+++ b/rpmdrake
@@ -651,11 +651,14 @@ or you already installed all of them."));
}
foreach (@nodes_with_deps) {
- exists $pkgs->{$_} or next; #- some deps may exist on some packages which aren't listed because
- #- not upgradable (older than what currently installed)
+ #- some deps may exist on some packages which aren't listed because
+ #- not upgradable (older than what currently installed)
+ exists $pkgs->{$_} or next;
+ $pkgs->{$_}{pkg} or $new_state = 0; #- can't be removed
$set_state->($_, $new_state ? 'selected' : 'unselected');
$pkgs->{$_}{selected} = $new_state;
- $size_selected += $pkgs->{$_}{pkg}->size * ($new_state ? 1 : -1);
+ $pkgs->{$_}{pkg}
+ and $size_selected += $pkgs->{$_}{pkg}->size * ($new_state ? 1 : -1);
}
},
get_status => sub { $MODE eq 'install' ? N("Selected: %d MB / Free disk space: %d MB",