summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Espie <espie@cvs.openbsd.org>2009-12-30 17:40:46 +0000
committerMarc Espie <espie@cvs.openbsd.org>2009-12-30 17:40:46 +0000
commit41c0576c65ec06b1a15013b6ad78b5e8b7e3f62c (patch)
tree243fa16bcac05dbe4a5d4b5722605d89917c3c1a
parent8d34f863646a46e095ee8d62104e162431069e81 (diff)
... and this should fix todd's case, that of not finding anything and
resorting to default...
-rw-r--r--usr.sbin/pkg_add/OpenBSD/Dependencies.pm6
1 files changed, 5 insertions, 1 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/Dependencies.pm b/usr.sbin/pkg_add/OpenBSD/Dependencies.pm
index b49d301e45c..ff8705f14b5 100644
--- a/usr.sbin/pkg_add/OpenBSD/Dependencies.pm
+++ b/usr.sbin/pkg_add/OpenBSD/Dependencies.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: Dependencies.pm,v 1.112 2009/12/30 17:37:36 espie Exp $
+# $OpenBSD: Dependencies.pm,v 1.113 2009/12/30 17:40:45 espie Exp $
#
# Copyright (c) 2005-2007 Marc Espie <espie@openbsd.org>
#
@@ -536,6 +536,10 @@ sub solve_dependency
# resort to default if nothing else
$v = $dep->{def};
+ if (defined $state->{tracker}{cant_install}{$v}) {
+ set_global($dep, _cache::bad->new($v));
+ return $v;
+ }
my $s = OpenBSD::UpdateSet->create_new($v);
$state->tracker->todo($s);
$self->add_dep($s);