diff options
author | Tim Henigan <tim.henigan@gmail.com> | 2012-03-14 12:38:06 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-03-14 15:22:38 -0700 |
commit | bfe392e3674770e8a0312d4945b0a5f2c9007eab (patch) | |
tree | 69904b5eb0b3fddeec484b7a9c3d652182156c83 | |
parent | contrib/diffall: eliminate duplicate while loops (diff) | |
download | tgif-bfe392e3674770e8a0312d4945b0a5f2c9007eab.tar.xz |
contrib/diffall: fix cleanup trap on Windows
Prior to this commit, the cleanup trap that removes the tmp dir
created by the script would fail on Windows. The error was silently
ignored by the script.
On Windows, a directory cannot be removed while it is the working
directory of the process (thanks to Johannes Sixt on the Git list
for this info [1]).
This commit eliminates the 'cd' into the tmp directory that caused
the error.
[1]: http://article.gmane.org/gmane.comp.version-control.git/193086
Signed-off-by: Tim Henigan <tim.henigan@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | contrib/diffall/git-diffall | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/contrib/diffall/git-diffall b/contrib/diffall/git-diffall index 91a31c8780..84f2b654d7 100755 --- a/contrib/diffall/git-diffall +++ b/contrib/diffall/git-diffall @@ -49,7 +49,7 @@ cd "$cdup" || { tmp=$(perl -e 'use File::Temp qw(tempdir); $t=tempdir("/tmp/git-diffall.XXXXX") or exit(1); print $t') || exit 1 -trap 'rm -rf "$tmp" 2>/dev/null' EXIT +trap 'rm -rf "$tmp"' EXIT left= right= @@ -233,9 +233,8 @@ do fi done < "$tmp/filelist" -cd "$tmp" -LOCAL="$left_dir" -REMOTE="$right_dir" +LOCAL="$tmp/$left_dir" +REMOTE="$tmp/$right_dir" if test -n "$diff_tool" then |