* Re: [PATCH] diff: generate prettier filenames when using GIT_EXTERNAL_DIFF
[not found] <1243226693-72293-1-git-send-email-davvid@gmail.com>
@ 2009-05-25 10:36 ` David Aguilar
0 siblings, 0 replies; only message in thread
From: David Aguilar @ 2009-05-25 10:36 UTC (permalink / raw)
To: gitster; +Cc: johannes.schindelin, git, markus.heidelberg, nick
On Sun, May 24, 2009 at 09:44:53PM -0700, David Aguilar wrote:
> diff --git a/path.c b/path.c
> index 8a0a674..c2a0fb6 100644
> --- a/path.c
> +++ b/path.c
> @@ -140,6 +140,24 @@ int git_mkstemp(char *path, size_t len, const char *template)
> }
>
>
> +/* git_mkstemp() - create tmp file with suffix honoring TMPDIR variable */
> +int git_mkstemps(char *path, size_t len, const char *template, int suffix_len)
> +{
> + const char *tmp;
> + size_t n;
> +
> + tmp = getenv("TMPDIR");
> + if (!tmp)
> + tmp = "/tmp";
> + n = snprintf(path, len, "%s/%s", tmp, template);
> + if (len <= n) {
> + errno = ENAMETOOLONG;
> + return -1;
> + }
> + return mkstemps(path, suffix_len);
> +}
Lured by a mac. I came home and I tried it on linux:
path.c:157: warning: implicit declaration of function
‘mkstemps’
Gah.
Darn you OS X and your non-portable 4.4 BSD extensions.
Sorry about that.
The original patch could do without the strbuf_detach
and free(), too. Being tricked by an OS X manpage like
that is quite unpleasant.
mkstemp() won't do since it doesn't work with suffixes
(the templates must end with "XXXX"). I'm sure there has to
be another way, but I just can't think of it right now.
It seemed so easy at the time.
Sigh...
--
David
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2009-05-25 10:36 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1243226693-72293-1-git-send-email-davvid@gmail.com>
2009-05-25 10:36 ` [PATCH] diff: generate prettier filenames when using GIT_EXTERNAL_DIFF David Aguilar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).