Commit 319cb378 authored by Eli Zaretskii's avatar Eli Zaretskii
Browse files

(init_environment): If one of the TMP... environment

variables is set to a drive letter without a trailing slash,
append a slash.
parent 7844257c
......@@ -4408,9 +4408,28 @@ init_environment (argc, argv, skip_args)
for (i = 0; i < imax ; i++)
{
const char *tmp = tempdirs[i];
char buf[FILENAME_MAX];
if (*tmp == '$')
tmp = getenv (tmp + 1);
{
int tmp_len;
tmp = getenv (tmp + 1);
if (!tmp)
continue;
/* Some lusers set TMPDIR=e:, probably because some losing
programs cannot handle multiple slashes if they use e:/.
e: fails in `access' below, so we interpret e: as e:/. */
tmp_len = strlen(tmp);
if (tmp[tmp_len - 1] != '/' && tmp[tmp_len - 1] != '\\')
{
strcpy(buf, tmp);
buf[tmp_len++] = '/', buf[tmp_len] = 0;
tmp = buf;
}
}
/* Note that `access' can lie to us if the directory resides on a
read-only filesystem, like CD-ROM or a write-protected floppy.
The only way to be really sure is to actually create a file and
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment