From a04897e74b24b59ed2a212d967f3698f08fec438 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 9 Jul 2017 13:54:02 +0100 Subject: [PATCH] dgit: Pass --no-renames to git diff-tree -z, avoiding potential trouble Without this option, git-diff-tree might detect a rename (or possibly even a copy). If it does it prints a different output format with a status of C or R *and a separate filename*. The latter is an additional nul-terminated record and would get dgit's interpreter of the git diff-tree output out of step. Signed-off-by: Ian Jackson --- debian/changelog | 3 ++- dgit | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/debian/changelog b/debian/changelog index 780fe23f..5d78d259 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,7 @@ dgit (3.12~) unstable; urgency=medium - * + Important bugfixes to dgit: + * Pass --no-renames to git diff-tree -z, avoiding potential trouble. -- diff --git a/dgit b/dgit index ccf50094..91172dad 100755 --- a/dgit +++ b/dgit @@ -4891,7 +4891,7 @@ sub quiltify_trees_differ ($$;$$$) { # a list of unrepresentable changes (removals of upstream files # (as messages) local $/=undef; - my @cmd = (@git, qw(diff-tree -z)); + my @cmd = (@git, qw(diff-tree -z --no-renames)); push @cmd, qw(--name-only) unless $unrepres; push @cmd, qw(-r) if $finegrained || $unrepres; push @cmd, $x, $y; -- 2.30.2