diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2018-08-10 14:28:50 +0100 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2018-08-10 14:32:35 +0100 |
commit | dfc092e0ec3d932e51a071000519477d0e33525c (patch) | |
tree | d0a06b020838dbec7c1216d4cfa44c62b3bfd353 /git-debrebase | |
parent | e019247f462f1580abe05ec3c0e7724781a73096 (diff) |
git-debrebase: Make read_tree_upstream global (nfc)
Save debian/ explicitly. This is a bit annoying.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Diffstat (limited to 'git-debrebase')
-rwxr-xr-x | git-debrebase | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/git-debrebase b/git-debrebase index 1a79a28..f4602d5 100755 --- a/git-debrebase +++ b/git-debrebase @@ -261,6 +261,14 @@ sub read_tree_debian ($) { rm_subdir_cached 'debian/patches'; } +sub read_tree_upstream ($) { + my ($treeish) = @_; + my $save = cmdoutput @git, qw(write-tree --prefix=debian/); + runcmd @git, qw(read-tree), $treeish; + read_tree_subdir 'debian', $save; + rm_subdir_cached 'debian/patches'; +}; + sub make_commit ($$) { my ($parents, $message_paras) = @_; my $tree = cmdoutput @git, qw(write-tree); @@ -873,12 +881,6 @@ sub walk ($;$$$) { my $rewriting = 0; - my $read_tree_upstream = sub { - my ($treeish) = @_; - runcmd @git, qw(read-tree), $treeish; - read_tree_debian($build); - }; - $#upp_cl = $upp_limit if defined $upp_limit; my $committer_authline = calculate_committer_authline(); @@ -906,7 +908,7 @@ sub walk ($;$$$) { if ($method eq 'Debian') { read_tree_debian($cltree); } elsif ($method eq 'Upstream') { - $read_tree_upstream->($cltree); + read_tree_upstream($cltree); } elsif ($method eq 'StartRewrite') { $rewriting = 1; next; @@ -919,7 +921,7 @@ sub walk ($;$$$) { confess unless $rewriting; my $differs = (get_differs $build, $cltree); next unless $differs & D_UPS; - $read_tree_upstream->($cltree); + read_tree_upstream($cltree); push @parents, map { $_->{CommitId} } @{ $cl->{OrigParents} }; } else { confess "$method ?"; |