diff options
author | 2018-06-24 19:59:35 +0000 | |
---|---|---|
committer | 2018-06-24 19:59:35 +0000 | |
commit | 7f38ef0401a639f81f632921f9b51fd885b4968a (patch) | |
tree | 4beb7dd70e4ef55f33efc0921e79283d0d9ec79c | |
parent | Fix a quirk noticed by espie@: let "jot" without any argument do the (diff) | |
download | wireguard-openbsd-7f38ef0401a639f81f632921f9b51fd885b4968a.tar.xz wireguard-openbsd-7f38ef0401a639f81f632921f9b51fd885b4968a.zip |
tags should work more like other errors. In particular, avoid infinite
loop if tag not found...
-rw-r--r-- | usr.sbin/pkg_add/OpenBSD/PkgAdd.pm | 10 | ||||
-rw-r--r-- | usr.sbin/pkg_add/OpenBSD/PkgDelete.pm | 11 |
2 files changed, 9 insertions, 12 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm b/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm index 33c465c79af..3512bb6a9be 100644 --- a/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm +++ b/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm @@ -1,7 +1,7 @@ #! /usr/bin/perl # ex:ts=8 sw=4: -# $OpenBSD: PkgAdd.pm,v 1.102 2018/06/22 15:02:09 espie Exp $ +# $OpenBSD: PkgAdd.pm,v 1.103 2018/06/24 19:59:35 espie Exp $ # # Copyright (c) 2003-2014 Marc Espie <espie@openbsd.org> # @@ -994,10 +994,10 @@ sub process_set return (); } if (!$set->solver->solve_tags($state)) { - if (!$state->defines('libdepends')) { - $state->{bad}++; - return (); - } + $set->cleanup(OpenBSD::Handle::CANT_INSTALL, "tags not found"); + $state->tracker->cant($set); + $state->{bad}++; + return (); } if (!$set->recheck_conflicts($state)) { $state->{bad}++; diff --git a/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm b/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm index 3f151b75b3e..a5312ab4947 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.42 2018/06/22 15:02:09 espie Exp $ +# $OpenBSD: PkgDelete.pm,v 1.43 2018/06/24 19:59:35 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # @@ -372,12 +372,9 @@ sub process_set } if (defined $pkg->plist->{tags}) { if (!$set->solver->solve_tags($state)) { - if (!$state->defines('libdepends')) { - $set->cleanup( - OpenBSD::Handle::CANT_DELETE); - $state->tracker->cant($set); - return (); - } + $set->cleanup(OpenBSD::Handle::CANT_DELETE); + $state->tracker->cant($set); + return (); } } } |