[PATCH 5/5 v2] contrib/diffall: fix cleanup trap on Windows
- From
Tim Henigan <tim.henigan@gmail.com>
- Date
- Mar 14, 2012, 16:38 UTC
- Message-ID
- <1331743086-32304-6-git-send-email-tim.henigan@gmail.com>
- In-Reply-To
- <1331743086-32304-1-git-send-email-tim.henigan@gmail.com>
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> ---
This patch was added in v2 of the series.
contrib/diffall/git-diffall | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/contrib/diffall/git-diffall b/contrib/diffall/git-diffall index 91a31c8..84f2b65 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
-- 1.7.10.rc0