From a4d27ce9d75fc04b74daf8dfc93f5107c2b96778 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 16 Jul 2017 11:26:32 +0100 Subject: dgit: unrepres. changes: Separate out creation and deletion We are going to want to handle these cases separately because the behaviour of dpkg-source is different. In this commit, simply clone the existing code (and add a few comments), so no functional change. Signed-off-by: Ian Jackson --- dgit | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dgit b/dgit index 8b9934b..1f15630 100755 --- a/dgit +++ b/dgit @@ -4915,9 +4915,16 @@ sub quiltify_trees_differ ($$;$$$) { $oldmode =~ m/^(?:10|12)\d{4}$/; if ($oldmode =~ m/[^0]/ && $newmode =~ m/[^0]/) { + # both old and new files exist die "mode or type changed\n" if $oldmode ne $newmode; die "modified symlink\n" unless $newmode =~ m/^10/; + } elsif ($oldmode =~ m/[^0]/) { + # deletion + die "non-default mode or type\n" + unless $newmode =~ m/^100644$/ || + $oldmode =~ m/^100644$/; } else { + # creation die "non-default mode or type\n" unless $newmode =~ m/^100644$/ || $oldmode =~ m/^100644$/; -- cgit v1.2.3