summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--usr.sbin/pkg_add/OpenBSD/PkgAdd.pm14
1 files changed, 10 insertions, 4 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm b/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm
index 094db806830..056b37cbb17 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.149 2023/12/03 16:38:28 espie Exp $
+# $OpenBSD: PkgAdd.pm,v 1.150 2024/01/02 10:25:48 espie Exp $
#
# Copyright (c) 2003-2014 Marc Espie <espie@openbsd.org>
#
@@ -1164,11 +1164,17 @@ sub quirk_set($state)
sub do_quirks($self, $state)
{
- my $set = quirk_set($state);
- $self->process_set($set, $state);
+ my $list = [quirk_set($state)];
+ $state->tracker->todo(@$list);
+ while (my $set = shift @$list) {
+ $state->status->what->set($set);
+ $set = $set->real_set;
+ next if $set->{finished};
+ $state->progress->set_header('Checking packages');
+ unshift(@$list, $self->process_set($set, $state));
+ }
}
-
sub process_parameters($self, $state)
{
my $add_hints = $state->{fuzzy} ? "add_hints" : "add_hints2";