chiark / gitweb /
test suite: lib-baredebian: Break out $uvtag
[dgit.git] / dgit
diff --git a/dgit b/dgit
index 4844bfce36e0c3b3343da3fc907b7e4310760609..c5ff37b53406b91740f39115357a956a0eef4b7e 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -2290,7 +2290,6 @@ sub import_tarball_tartrees ($$) {
 
        my $f = $fi->{Filename};
        printdebug "import considering $f ";
-       (printdebug "only one dfi\n"), next if @$dfi == 1;
        (printdebug "not tar\n"), next unless $f =~ m/\.tar(\.\w+)?$/;
        (printdebug "signature\n"), next if $f =~ m/$orig_f_sig_re$/o;
        my $compr_ext = $1;
@@ -2302,6 +2301,7 @@ sub import_tarball_tartrees ($$) {
                          $compr_ext, $orig_f_part
                         ), "\n";
 
+       my $path = $fi->{Path} // $f;
        my $input = new IO::File $f, '<' or die "$f $!";
        my $compr_pid;
        my @compr_cmd;
@@ -2367,6 +2367,7 @@ sub import_tarball_tartrees ($$) {
             Sort => (!$orig_f_part         ? 2 :
                     $orig_f_part =~ m/-/g ? 1 :
                                             0),
+            OrigPart => $orig_f_part, # 'orig', 'orig-XXX', or undef 
             F => $f,
             Tree => $tree,
         };
@@ -2442,9 +2443,10 @@ sub import_tarball_commits ($$) {
     $changes =~ s/^\n//; # Changes: \n
     my $cversion = getfield $clogp, 'Version';
 
+    my $r1authline;
     if (@$tartrees) {
        $r1clogp //= $clogp; # maybe there's only one entry;
-       my $r1authline = clogp_authline $r1clogp;
+        $r1authline = clogp_authline $r1clogp;
        # Strictly, r1authline might now be wrong if it's going to be
        # unused because !$any_orig.  Whatever.
 
@@ -2475,7 +2477,7 @@ END_T
        }
     }
 
-    return ($authline, $clogp, $changes);
+    return ($authline, $r1authline, $clogp, $changes);
 }
 
 sub generate_commits_from_dsc () {
@@ -2535,7 +2537,9 @@ sub generate_commits_from_dsc () {
        }
     }
 
-    my @tartrees = import_tarball_tartrees($upstreamv, \@dfi);
+    my @tartrees;
+    @tartrees = import_tarball_tartrees($upstreamv, \@dfi)
+       unless @dfi == 1; # only one file in .dsc
 
     my $dscfn = "$package.dsc";
 
@@ -2566,7 +2570,7 @@ sub generate_commits_from_dsc () {
        $dappliedtree = git_add_write_tree();
     }
 
-    my ($authline, $clogp, $changes) =
+    my ($authline, $r1authline, $clogp, $changes) =
        import_tarball_commits(\@tartrees, $upstreamv);
 
     my $cversion = getfield $clogp, 'Version';