/* Utility to pick a temporary filename prefix.
- Copyright (C) 1996, 1997, 1998, 2001, 2009 Free Software Foundation, Inc.
+ Copyright (C) 1996-2017 Free Software Foundation, Inc.
This file is part of the libiberty library.
Libiberty is free software; you can redistribute it and/or
/*
-@deftypefn Replacement char* choose_tmpdir ()
+@deftypefn Replacement const char* choose_tmpdir ()
Returns a pointer to a directory path suitable for creating temporary
files in.
*/
-char *
+const char *
choose_tmpdir (void)
{
if (!memoized_tmpdir)
#endif
#ifdef P_tmpdir
- base = try_dir (P_tmpdir, base);
+ /* We really want a directory name here as if concatenated with say \dir
+ we do not end up with a double \\ which defines an UNC path. */
+ if (strcmp (P_tmpdir, "\\") == 0)
+ base = try_dir ("\\.", base);
+ else
+ base = try_dir (P_tmpdir, base);
#endif
/* Try /var/tmp, /usr/tmp, then /tmp. */