OSDN Git Service

Git.pm: add specified name to tempfile template
authorEric Wong <normalperson@yhbt.net>
Wed, 29 Oct 2014 19:31:55 +0000 (19:31 +0000)
committerEric Wong <normalperson@yhbt.net>
Wed, 29 Oct 2014 19:59:23 +0000 (19:59 +0000)
This should help me track down errors in git-svn more easily:

write .git/Git_XXXXXX: Bad file descriptor
 at /usr/lib/perl5/SVN/Ra.pm line 623

Signed-off-by: Eric Wong <normalperson@yhbt.net>
perl/Git.pm

index 204fdc6..b5905ee 100644 (file)
@@ -1294,8 +1294,11 @@ sub _temp_cache {
                        $tmpdir = $self->repo_path();
                }
 
+               my $n = $name;
+               $n =~ s/\W/_/g; # no strange chars
+
                ($$temp_fd, $fname) = File::Temp::tempfile(
-                       'Git_XXXXXX', UNLINK => 1, DIR => $tmpdir,
+                       "Git_${n}_XXXXXX", UNLINK => 1, DIR => $tmpdir,
                        ) or throw Error::Simple("couldn't open new temp file");
 
                $$temp_fd->autoflush;