chiark / gitweb /
Honour *.clean-mode configuration setting for --clean= mode.
[dgit.git] / dgit
diff --git a/dgit b/dgit
index bde052ea4f9dc22708b18101fcac329ceb7e5fc4..83969717816bc5286d0566d2d7f1956e1085ad05 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -3312,7 +3312,14 @@ if (!defined $quilt_mode) {
     $quilt_mode = $1;
 }
 
-$cleanmode //= 'dpkg-source';    
+if (!defined $cleanmode) {
+    local $access_forpush;
+    $cleanmode = access_cfg('clean-mode', 'RETURN-UNDEF');
+    $cleanmode //= 'dpkg-source';
+
+    badcfg "unknown clean-mode \`$cleanmode'" unless
+       $cleanmode =~ m/^($cleanmode_re)$(?!\n)/s;
+}
 
 my $fn = ${*::}{"cmd_$cmd"};
 $fn or badusage "unknown operation $cmd";