From d87a3cd4eecf0fd00a7d84e4277d9d4264869728 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Sun, 3 Aug 2008 12:27:11 +0200 Subject: [PATCH] Path combining on Windows didn't work with / properly. --- dmd/root.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/dmd/root.c b/dmd/root.c index 49ea784c..dbc3d635 100644 --- a/dmd/root.c +++ b/dmd/root.c @@ -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; }