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

[PATCH 5/5] archimport - better handling of temp dirs

From
Mmartin@catalyst.net.nz <martin@catalyst.net.nz>
Date
Sep 11, 2005, 09:26 UTC
Message-ID
<1126430765146-git-send-email-martin@catalyst.net.nz>
In-Reply-To
<1126430765745-git-send-email-martin@catalyst.net.nz>

Switched from backwards hard-coded tmp directory creation to using File::Temp::tempdir() to create the directory inside $TMP_PATH or what the user has provided via the -t parameter.

Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
---
 git-archimport.perl |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)
67d3cf04c6a2353835d52a4d1ae85c7fb91bad36
diff --git a/git-archimport.perl b/git-archimport.perl
--- a/git-archimport.perl
+++ b/git-archimport.perl
@@ -23,7 +23,6 @@ See man (1) git-archimport for more deta
 
  - create tag objects instead of ref tags
  - audit shell-escaping of filenames
- - better handling of temp directories
  - hide our private tags somewhere smarter
  - find a way to make "cat *patches | patch" safe even when patchfiles are missing newlines  
 
@@ -37,7 +36,7 @@ use strict;
 use warnings;
 use Getopt::Std;
 use File::Spec;
-use File::Temp qw(tempfile);
+use File::Temp qw(tempfile tempdir);
 use File::Path qw(mkpath);
 use File::Basename qw(basename dirname);
 use String::ShellQuote;
@@ -72,9 +71,10 @@ usage if $opt_h;
 @ARGV >= 1 or usage();
 my @arch_roots = @ARGV;
 
-my $tmp = $opt_t;
-$tmp ||= '/tmp';
-$tmp .= '/git-archimport/';
+my ($tmpdir, $tmpdirname) = tempdir('git-archimport-XXXXXX', TMPDIR => 1, CLEANUP => 1);
+my $tmp = $opt_t || 1;
+$tmp = tempdir('git-archimport-XXXXXX', TMPDIR => 1, CLEANUP => 1);
+$opt_v && print "+ Using $tmp as temporary directory\n";
 
 my @psets  = ();                # the collection
 my %psets  = ();                # the collection, by name
Previous: martin@catalyst.net.nz
Message 2 of 2 in “archimport - use GIT_DIR instead of hardcoded ".git"”
  1. 4/5 archimport - use GIT_DIR instead of hardcoded ".git"martin@catalyst.net.nz, Sep 11, 2005
  2. 5/5 archimport - better handling of temp dirsmartin@catalyst.net.nz, Sep 11, 2005

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.