Path combining on Windows didn't work with / properly.

This commit is contained in:
Christian Kamm
2008-08-03 12:27:11 +02:00
parent 0613b47df9
commit d87a3cd4ee

View File

@@ -324,17 +324,16 @@ char *FileName::combine(char *path, char *name)
f = (char *)mem.malloc(pathlen + 1 + namelen + 1);
memcpy(f, path, pathlen);
if (path[pathlen - 1] != '/')
if (
path[pathlen - 1] != '/'
#if _WIN32
&& path[pathlen - 1] != '\\' && path[pathlen - 1] != ':'
#endif
)
{ f[pathlen] = '/';
pathlen++;
}
#if _WIN32
if (path[pathlen - 1] != '\\' && path[pathlen - 1] != ':')
{ f[pathlen] = '\\';
pathlen++;
}
#endif
memcpy(f + pathlen, name, namelen + 1);
return f;
}