diff options
author | 2011-11-25 09:25:59 +0000 | |
---|---|---|
committer | 2011-11-25 09:25:59 +0000 | |
commit | 4809484ae57baf5014eb778d057f35e82b9bad76 (patch) | |
tree | 96d2d726fabd556e5ed351557751f8f4ad10881d | |
parent | sync (diff) | |
download | wireguard-openbsd-4809484ae57baf5014eb778d057f35e82b9bad76.tar.xz wireguard-openbsd-4809484ae57baf5014eb778d057f35e82b9bad76.zip |
fix -a <list> semantics:
instead of first doing, -a, then deleting the list, it's ways more useful
to pick !manual installs in the list and remove them.
-rw-r--r-- | usr.sbin/pkg_add/OpenBSD/PkgDelete.pm | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm b/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm index 10525f2f3b8..5e8f5f63bc0 100644 --- a/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm +++ b/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm @@ -1,6 +1,6 @@ #!/usr/bin/perl # ex:ts=8 sw=4: -# $OpenBSD: PkgDelete.pm,v 1.24 2011/08/26 08:46:10 espie Exp $ +# $OpenBSD: PkgDelete.pm,v 1.25 2011/11/25 09:25:59 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # @@ -379,15 +379,17 @@ sub main { my ($self, $state) = @_; - $self->process_setlist($state); if ($state->{automatic}) { - my $inst = $state->repo->installed; - delete $state->{setlist}; - for my $l (@{$inst->locations_list}) { - $self->add_location($state, $l); + if (@{$state->{setlist}} == 0) { + my $inst = $state->repo->installed; + for my $l (@{$inst->locations_list}) { + $self->add_location($state, $l); + } } $state->{do_automatic} = 1; $self->process_setlist($state); + } else { + $self->process_setlist($state); } } |