incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Sebor <mse...@gmail.com>
Subject Re: [PATCH] STDCXX-401 test suite should honor TMPDIR
Date Tue, 21 Oct 2008 04:57:32 GMT
Scott Zhong wrote:
> Changelog:
> 
> * tests/src/file.cpp (rw_tmpnam): use TMPDIR variable from environment
> if defined.

Okay, thanks. Patch committed here:
   http://svn.apache.org/viewvc?rev=706515&view=rev

FYI: I used your Rogue Wave email address to complete your change
comment. If that's not what you want listed in the ChangeLog please
provide an alternate address.

Martin

> 
> here is the patch:
> 
> Index: tests/src/file.cpp
> ===================================================================
> --- tests/src/file.cpp  (revision 702657)
> +++ tests/src/file.cpp  (working copy)
> @@ -208,8 +208,13 @@
>  #ifndef _RWSTD_NO_MKSTEMP
>  #  define TMP_TEMPLATE      "tmpfile-XXXXXX"
>  
> +    const char *tmpdir = getenv ("TMPDIR");
> +    if (tmpdir == NULL) { 
> +        tmpdir = P_tmpdir;
> +    }
> +
>      if (!buf) {
> -        static char fname_buf [sizeof (P_tmpdir) + sizeof
> (TMP_TEMPLATE)];
> +        static char fname_buf [PATH_MAX];
>  
>          buf = fname_buf;
>          *buf = '\0';
> @@ -217,13 +222,13 @@
>  
>      if ('\0' == *buf) {
>          // copy the template to the buffer; make sure there is exactly
> -        // one path separator character between P_tmpdir and the file
> +        // one path separator character between tmpdir and the file
>          // name template (it doesn't really matter how many there are
>          // as long as it's at least one, but one looks better than two
>          // in diagnostic messages)
> -        size_t len = sizeof (P_tmpdir) - 1;
> +        size_t len = strlen (tmpdir) - 1;
>  
> -        memcpy (buf, P_tmpdir, len);
> +        memcpy (buf, tmpdir, len);
>          if (_RWSTD_PATH_SEP != buf [len - 1])
>              buf [len++] = _RWSTD_PATH_SEP;
>  
> @@ -251,7 +256,7 @@
>  #  ifdef _WIN32
>  
>      // create a temporary file name
> -    char* fname = tempnam (P_tmpdir, ".rwtest-tmp");
> +    char* fname = tempnam (tmpdir, ".rwtest-tmp");
>  
>      if (fname) {
>  
> @@ -272,7 +277,7 @@
>      else {
>          fprintf (stderr, "%s:%d: tempnam(\"%s\", \"%s\") failed: %s\n",
>                   __FILE__, __LINE__,
> -                 P_tmpdir, ".rwtest-tmp", strerror (errno));
> +                 tmpdir, ".rwtest-tmp", strerror (errno));
>      }
>  
>  #  else
> 


Mime
View raw message