chiark / gitweb /
wip, compile fixes
[dgit.git] / dgit
diff --git a/dgit b/dgit
index 6a3f7b7626c97c91150d8ebf329f6bd8b11b850f..0c024c942c57c0fe5fb3a48e0fcd919447041831 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -28,7 +28,6 @@ use File::Basename;
 use Dpkg::Version;
 use POSIX;
 use IPC::Open2;
-use File::Temp;
 
 our $our_version = 'UNRELEASED'; ###substituted###
 
@@ -172,8 +171,8 @@ sub badproto ($$) {
     fail "protocol violation; $m not expected";
 }
 
-sub protocol_expect ($&) {
-    my ($fh, $match) = @_;
+sub protocol_expect (&$) {
+    my ($match, $fh) = @_;
     local $_;
     $_ = <$fh>;
     defined && chomp or badproto $fh, "eof";
@@ -209,7 +208,7 @@ sub protocol_receive_file ($$) {
     my ($fh, $ourfn) = @_;
     open PF, ">", $ourfn or die "$ourfn: $!";
     for (;;) {
-       protocol_expect \*STDIN, { m/^data-block (.*})$|data-end$/ };
+       protocol_expect { m/^data-block (.*})$|data-end$/ } \*STDIN;
        length $1 or last;
        my $d = protocol_read_bytes \*STDIN, $1;
        print PF $d or die $!;
@@ -240,14 +239,14 @@ sub responder_receive_files ($@) {
     foreach my $fn (@ourfns) {
        protocol_receive_file \*STDIN, $fn;
     }
-    protocol_expect \*STDIN, { m/^files-end$/ };
+    protocol_expect { m/^files-end$/ } \*STDIN;
 }
 
 #---------- remote protocol support, initiator ----------
 
 sub initiator_expect (&) {
     my ($match) = @_;
-    protocol_expect \*RO, &$match;
+    protocol_expect { &$match } \*RO;
 }
 
 #---------- end remote code ----------
@@ -1089,7 +1088,7 @@ sub push_parse_changelog ($) {
     return ($clogp, $cversion, $tag, $dscfn);
 }
 
-sub push_parse_dsc ($$) {
+sub push_parse_dsc ($$$) {
     my ($dscfn,$dscfnwhat, $cversion) = @_;
     $dsc = parsecontrol($dscfn,$dscfnwhat);
     my $dversion = getfield $dsc, 'Version';
@@ -1115,6 +1114,8 @@ sub push_mktag ($$$$$$$$) {
                " does not match changelog \`$clogp->{$field}'";
     }
 
+    my $cversion = getfield $clogp, 'Version';
+
     # We make the git tag by hand because (a) that makes it easier
     # to control the "tagger" (b) we can do remote signing
     my $authline = clogp_authline $clogp;
@@ -1154,7 +1155,7 @@ sub sign_changes ($) {
     if ($sign) {
        my @debsign_cmd = @debsign;
        push @debsign_cmd, "-k$keyid" if defined $keyid;
-       push @debsign_cmd, "-p$pgp[0]" if $pgp[0] ne 'gpg';
+       push @debsign_cmd, "-p$gpg[0]" if $gpg[0] ne 'gpg';
        push @debsign_cmd, $changesfile;
        runcmd_ordryrun @debsign_cmd;
     }
@@ -1225,7 +1226,7 @@ sub dopush () {
        }
     }
 
-    responder_send_file('changes',$changesfn);
+    responder_send_file('changes',$changesfile);
 
     my $tfn = sub { ".git/dgit/tag$_[0]"; };
     my ($tagobjfn) =
@@ -1259,7 +1260,7 @@ sub dopush () {
        my $dryrunsuffix = $dryrun ? ".tmp" : "";
        responder_receive_files('signed-dsc-changes',
                                "../$dscfn$dryrunsuffix",
-                               "$changesfile$dryrupnsuffix");
+                               "$changesfile$dryrunsuffix");
     } else {
        sign_changes $changesfile;
     }
@@ -1384,7 +1385,7 @@ sub cmd_remote_push_responder {
     die unless @rargs;
     my ($dir) = @rargs;
     chdir $dir or die "$dir: $!";
-    $we_are_remote = 1;
+    $we_are_responder = 1;
     $|=1;
     responder_send_command("dgit-remote-push-ready");
     &cmd_push;
@@ -1417,7 +1418,7 @@ sub cmd_rpush {
     $dir =~ s{^-}{./-};
     my @rargs = ($dir);
     my @rdgit;
-    push @rdgit, @dgit
+    push @rdgit, @dgit;
     push @rdgit, @ropts;
     push @rdgit, (scalar @rargs), @rargs;
     push @rdgit, @ARGV;
@@ -1483,11 +1484,11 @@ sub i_localname_dsc {
     ($i_clogp, $i_version, $i_tag, $i_dscfn) =
        push_parse_changelog 'remote-changelog.822';
     die if $i_dscfn =~ m#/|^\W#;
-    return $dscfn;
+    return $i_dscfn;
 }
 
 sub i_want_signed_tag {
-    defined $i_param{'head'} && defined $dscfn
+    defined $i_param{'head'} && defined $i_dscfn
        or badproto \*RO, "sequencing error";
     my $head = $i_param{'head'};
     die if $head =~ m/[^0-9a-f]/ || $head !~ m/^../;