git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 2/4] contrib/diffall: teach diffall to create tmp dirs without using mktemp

From
Tim Henigan <tim.henigan@gmail.com>
Date
Mar 13, 2012, 17:45 UTC
Message-ID
<1331660734-10538-2-git-send-email-tim.henigan@gmail.com>
In-Reply-To
<1331660734-10538-1-git-send-email-tim.henigan@gmail.com>

mktemp is not available on all platforms. Instead of littering the code with a work-around, this commit replaces mktemp with a one-line Perl script.

Signed-off-by: Tim Henigan <tim.henigan@gmail.com>
---
 contrib/diffall/git-diffall |   11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/contrib/diffall/git-diffall b/contrib/diffall/git-diffall
index d706a6d..443f646 100755
--- a/contrib/diffall/git-diffall
+++ b/contrib/diffall/git-diffall
@@ -45,13 +45,10 @@ cd "$cdup" || {
 	exit 1
 }
 
-# mktemp is not available on all platforms (missing from msysgit)
-# Use a hard-coded tmp dir if it is not available
-tmp="$(mktemp -d -t tmp.XXXXXX 2>/dev/null)" || {
-	tmp=/tmp/git-diffall-tmp.$$
-	mkdir "$tmp" || exit 1
-}
-
+# set up temp dir
+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
 
 left=
-- 
1.7.10.rc0
Previous: Tim HeniganNext: Tim Henigan
Message 2 of 5 in “contrib/diffall: change comment to reflect actual reason for 'cdup'”
  1. 1/4 contrib/diffall: change comment to reflect actual reason for 'cdup'Tim Henigan, Mar 13, 2012
  2. 2/4 contrib/diffall: teach diffall to create tmp dirs without using mktempTim Henigan, Mar 13, 2012
  3. 3/4 contrib/diffall: teach diffall to handle working copy changes without tarTim Henigan, Mar 13, 2012
  4. 4/4 contrib/diffall: eliminate duplicate while loopsTim Henigan, Mar 13, 2012
  5. Tim HeniganMar 13, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.