summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xinfra/dgit-repos-policy-debian8
1 files changed, 7 insertions, 1 deletions
diff --git a/infra/dgit-repos-policy-debian b/infra/dgit-repos-policy-debian
index 399fd8c..30dbbbe 100755
--- a/infra/dgit-repos-policy-debian
+++ b/infra/dgit-repos-policy-debian
@@ -290,11 +290,16 @@ sub action_push_confirm () {
END
$initq->execute($pkg);
+ my @objscatcmd = qw(git);
+ push @objscatcmd, qw(cat-file --batch);
+ debugcmd '|',@objscatcmd if $debuglevel>=2;
+
my @taintids;
my $chkinput = tempfile();
while (my $taint = $initq->fetchrow_hashref()) {
push @taintids, $taint->{taint_id};
print $chkinput $taint->{gitobjid}, "\n" or die $!;
+ printdebug '|> ', $taint->{gitobjid}, "\n" if $debuglevel>=2;
}
flush $chkinput or die $!;
seek $chkinput,0,0 or die $!;
@@ -302,7 +307,7 @@ END
my $checkpid = open CHKOUT, "-|" // die $!;
if (!$checkpid) {
open STDIN, "<&", $chkinput or die $!;
- exec qw(git cat-file --batch) or die $!;
+ exec @objscatcmd or die $!;
}
my ($taintinfoq,$overridesanyq,$untaintq,$overridesq);
@@ -328,6 +333,7 @@ END
# just read what we expect and then let it get SIGPIPE.
$!=0; $_ = <CHKOUT>;
die "$? $!" unless defined $_;
+ printdebug "|< ", $_ if $debuglevel>=2;
next if m/^\w+ missing$/;
die unless m/^(\w+) (\w+) (\d+)\s/;