From 741ee74d99aab18593ba6d4bb815f5294d59699f Mon Sep 17 00:00:00 2001 From: David Caldwell Date: Wed, 9 Apr 2008 11:43:35 -0700 Subject: [PATCH] [commit-patch] Fix lsdiff on CVS sub directories. --- commit-patch | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/commit-patch b/commit-patch index f23c2d3..d3cff64 100755 --- a/commit-patch +++ b/commit-patch @@ -29,6 +29,7 @@ while (!$vc{name}) { $vc{add} = 'cvs add'; $vc{remove} = 'cvs rm'; $vc{patcharg} = '-p0'; + $vc{lsdiffarg} = []; } elsif (-d "$repo/_darcs") { $vc{name} = 'darcs'; $vc{diff} = 'darcs diff -u'; @@ -36,6 +37,7 @@ while (!$vc{name}) { $vc{remove} = 'true'; $vc{commit} = 'darcs record --all'; $vc{patcharg} = '-p1'; + $vc{lsdiffarg} = [qw(--strip 1)]; if ($message) { # Darcs doesn't like multiline -m comments so we have to put the log message into a file and use --logfile. Yuck. #$vc{message_opt} = '-m'; @@ -55,6 +57,7 @@ while (!$vc{name}) { $vc{add} = 'hg addremove'; $vc{remove} = 'true'; $vc{patcharg} = '-p1'; + $vc{lsdiffarg} = [qw(--strip 1)]; } else { $repo.="/.."; printf("Trying back a dir: $repo, abs:%s\n", abs_path($repo)); @@ -63,7 +66,7 @@ while (!$vc{name}) { } my ($lsdiff_out, $err); -run ["lsdiff", "--strip", "1", $patch], '|', ["sort"], '|', ["uniq"], \$lsdiff_out, \$err or die "lsdiff|sort|unique : $! ($err)"; +run ["lsdiff", @{$vc{lsdiffarg}}, $patch], '|', ["sort"], '|', ["uniq"], \$lsdiff_out, \$err or die "lsdiff|sort|unique : $! ($err)"; my @files = split(/\n/, $lsdiff_out); die "No files in patch" unless scalar @files; -- 2.51.2