chiark / gitweb /
git-debrebase: make cfg optionally take $optional (nfc)
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Thu, 15 Feb 2018 15:48:14 +0000 (15:48 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 16 Jun 2018 11:25:49 +0000 (12:25 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
git-debrebase

index 6f89fc26a988edc24e101aa7c583c4b14de300ca..726c7be8a75d7b3d13feefb78e1d5d7a3c50cbc2 100755 (executable)
@@ -98,13 +98,17 @@ sub badusage ($) {
     die "bad usage: $m\n";
 }
 
     die "bad usage: $m\n";
 }
 
-sub cfg ($) {
-    my ($k) = @_;
+sub cfg ($;$) {
+    my ($k, $optional) = @_;
     $/ = "\0";
     my @cmd = qw(git config -z);
     push @cmd, qw(--get-all) if wantarray;
     push @cmd, $k;
     $/ = "\0";
     my @cmd = qw(git config -z);
     push @cmd, qw(--get-all) if wantarray;
     push @cmd, $k;
-    my $out = cmdoutput @cmd;
+    my $out = cmdoutput_errok @cmd;
+    if (!defined $out) {
+       fail "missing required git config $k" unless $optional;
+       return ();
+    }
     return split /\0/, $out;
 }
 
     return split /\0/, $out;
 }