changeset 429:6bd99cc5eb08

Allow / as a path separator on Windows.
author Christian Kamm <kamm incasoftware de>
date Tue, 29 Jul 2008 17:35:33 +0200
parents 8b7cee241e91
children 120cb5ea9eea
files dmd/root.c
diffstat 1 files changed, 15 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/dmd/root.c	Tue Jul 29 15:58:45 2008 +0200
+++ b/dmd/root.c	Tue Jul 29 17:35:33 2008 +0200
@@ -323,12 +323,12 @@
     namelen = strlen(name);
     f = (char *)mem.malloc(pathlen + 1 + namelen + 1);
     memcpy(f, path, pathlen);
-#if linux
+
     if (path[pathlen - 1] != '/')
     {	f[pathlen] = '/';
 	pathlen++;
     }
-#endif
+
 #if _WIN32
     if (path[pathlen - 1] != '\\' && path[pathlen - 1] != ':')
     {	f[pathlen] = '\\';
@@ -486,14 +486,13 @@
 
 int FileName::absolute(const char *name)
 {
+    return
 #if _WIN32
-    return (*name == '\\') ||
-	   (*name == '/')  ||
-	   (*name && name[1] == ':');
+	(*name == '\\') ||
+	(*name == '/')  ||
+	(*name && name[1] == ':') ||
 #endif
-#if linux
-    return (*name == '/');
-#endif
+	(*name == '/');
 }
 
 /********************************
@@ -513,10 +512,10 @@
 	switch (*e)
 	{   case '.':
 		return e + 1;
-#if linux
+
 	    case '/':
 	        break;
-#endif
+
 #if _WIN32
 	    case '\\':
 	    case ':':
@@ -569,10 +568,10 @@
     {
 	switch (*e)
 	{
-#if linux
+
 	    case '/':
 	       return e + 1;
-#endif
+
 #if _WIN32
 	    case '\\':
 	    case ':':
@@ -606,10 +605,10 @@
 
     if (n > str)
     {
-#if linux
+
 	if (n[-1] == '/')
 	    n--;
-#endif
+
 #if _WIN32
 	if (n[-1] == '\\')
 	    n--;
@@ -642,12 +641,12 @@
     namelen = strlen(name);
     f = (char *)mem.malloc(pathlen + 1 + namelen + 1);
     memcpy(f, path, pathlen);
-#if linux
+
     if (path[pathlen - 1] != '/')
     {	f[pathlen] = '/';
 	pathlen++;
     }
-#endif
+
 #if _WIN32
     if (path[pathlen - 1] != '\\' && path[pathlen - 1] != ':')
     {	f[pathlen] = '\\';