# [PATCH] Git.pm: add specified name to tempfile template

2 messages from 2014-10-29 to 2014-10-29. Participants: Eric Wong, Junio C Hamano.
Thread: https://gitlist.dev/t/37836

## Eric Wong, 2014-10-29 19:31

Subject: [PATCH] Git.pm: add specified name to tempfile template
Message-ID: <20141029193155.GA2232@dcvr.yhbt.net>
URL: https://gitlist.dev/e/20141029193155.GA2232%40dcvr.yhbt.net

```
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>
---
  Not sure you want to take this separately or in a git-svn pull.
  Still working on the error this patch is meant to help me find.

 perl/Git.pm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/perl/Git.pm b/perl/Git.pm
index 204fdc6..b5905ee 100644
--- a/perl/Git.pm
+++ b/perl/Git.pm
@@ -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;
-- 
EW

```

## Junio C Hamano, 2014-10-29 19:50

Subject: Re: [PATCH] Git.pm: add specified name to tempfile template
Message-ID: <xmqqd29ay7s6.fsf@gitster.dls.corp.google.com>
URL: https://gitlist.dev/e/xmqqd29ay7s6.fsf%40gitster.dls.corp.google.com
In-Reply-To: <20141029193155.GA2232@dcvr.yhbt.net>

```
Eric Wong <normalperson@yhbt.net> writes:

> 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>
> ---
>   Not sure you want to take this separately or in a git-svn pull.
>   Still working on the error this patch is meant to help me find.

Thanks; I think it is OK for it to be part of the git-svn update.
No other active perl/Git.pm user that wants to have access to this
facility early exists as far as I can see ;-)

>
>  perl/Git.pm | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/perl/Git.pm b/perl/Git.pm
> index 204fdc6..b5905ee 100644
> --- a/perl/Git.pm
> +++ b/perl/Git.pm
> @@ -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;

```
