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

From: Junio C Hamano <[email-masked]>
Date: Wed, 29 Oct 2014 12:50:49 -0700

Eric Wong <[email-masked]> 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 <[email-masked]>
> ---
>   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;