make-temp-file.c: Always default DIR_SEPARATOR to '/'.

* make-temp-file.c: Always default DIR_SEPARATOR to '/'.
	Don't default P_tmpdir to anything.  Try /var/tmp before
	/usr/tmp.

From-SVN: r40706
This commit is contained in:
Zack Weinberg 2001-03-21 19:29:33 +00:00 committed by Zack Weinberg
parent edb7d731b6
commit 49ee944b86
2 changed files with 13 additions and 21 deletions

View File

@ -1,3 +1,9 @@
2001-03-21 Zack Weinberg <zackw@stanford.edu>
* make-temp-file.c: Always default DIR_SEPARATOR to '/'.
Don't default P_tmpdir to anything. Try /var/tmp before
/usr/tmp.
2001-03-20 Zack Weinberg <zackw@stanford.edu>
* choose-temp.c: Split off make_temp_file, and the code

View File

@ -45,28 +45,11 @@ Boston, MA 02111-1307, USA. */
#include "libiberty.h"
extern int mkstemps PARAMS ((char *, int));
#ifndef IN_GCC
#if defined (__MSDOS__) || (defined (_WIN32) && ! defined (__CYGWIN__) && ! defined (_UWIN))
#define DIR_SEPARATOR '\\'
#endif
#endif
/* '/' works just fine on MS-DOS based systems. */
#ifndef DIR_SEPARATOR
#define DIR_SEPARATOR '/'
#endif
/* On MSDOS, write temp files in current dir
because there's no place else we can expect to use. */
/* ??? Although the current directory is tried as a last resort,
this is left in so that on MSDOS it is preferred to /tmp on the
off chance that someone requires this, since that was the previous
behaviour. */
#ifdef __MSDOS__
#ifndef P_tmpdir
#define P_tmpdir "."
#endif
#endif
/* Name of temporary file.
mktemp requires 6 trailing X's. */
#define TEMP_FILE "ccXXXXXX"
@ -92,9 +75,11 @@ try (dir, base)
return 0;
}
static char tmp[] = { DIR_SEPARATOR, 't', 'm', 'p', 0 };
static char usrtmp[] =
static const char tmp[] = { DIR_SEPARATOR, 't', 'm', 'p', 0 };
static const char usrtmp[] =
{ DIR_SEPARATOR, 'u', 's', 'r', DIR_SEPARATOR, 't', 'm', 'p', 0 };
static const char vartmp[] =
{ DIR_SEPARATOR, 'v', 'a', 'r', DIR_SEPARATOR, 't', 'm', 'p', 0 };
static char *memoized_tmpdir;
@ -116,7 +101,8 @@ choose_tmpdir ()
base = try (P_tmpdir, base);
#endif
/* Try /usr/tmp, then /tmp. */
/* Try /var/tmp, /usr/tmp, then /tmp. */
base = try (vartmp, base);
base = try (usrtmp, base);
base = try (tmp, base);