Author: rfm
Date: Sat Mar  5 18:28:06 2016
New Revision: 39466

URL: http://svn.gna.org/viewcvs/gnustep?rev=39466&view=rev
Log:
fixes for tilde handling on windows

Modified:
    libs/base/trunk/Source/NSPathUtilities.m
    libs/base/trunk/Source/NSString.m
    libs/base/trunk/Tests/base/NSString/tilde.m

Modified: libs/base/trunk/Source/NSPathUtilities.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Source/NSPathUtilities.m?rev=39466&r1=39465&r2=39466&view=diff
==============================================================================
--- libs/base/trunk/Source/NSPathUtilities.m    (original)
+++ libs/base/trunk/Source/NSPathUtilities.m    Sat Mar  5 18:28:06 2016
@@ -1719,7 +1719,7 @@
 NSString *
 NSHomeDirectory(void)
 {
-  return NSHomeDirectoryForUser (NSUserName ());
+  return NSHomeDirectoryForUser(NSUserName());
 }
 
 /**
@@ -1810,6 +1810,10 @@
       fprintf(stderr, "NSHomeDirectoryForUser(%s) failed.\n",
         [loginName UTF8String]);
     }
+  if (nil != s)
+    {
+      s = [s stringByStandardizingPath];
+    }
 #endif
   return s;
 }
@@ -2094,7 +2098,7 @@
 #if    defined(__CYGWIN__)
   root = @"/cygdrive/c/";
 #elif  defined(__MINGW__)
-  root = @"C:\\";
+  root = @"C:/";
 #else
   root = @"/";
 #endif

Modified: libs/base/trunk/Source/NSString.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Source/NSString.m?rev=39466&r1=39465&r2=39466&view=diff
==============================================================================
--- libs/base/trunk/Source/NSString.m   (original)
+++ libs/base/trunk/Source/NSString.m   Sat Mar  5 18:28:06 2016
@@ -4729,12 +4729,13 @@
 
 - (NSString*) stringByAbbreviatingWithTildeInPath
 {
-  NSString     *homedir = NSHomeDirectory ();
+  NSString     *homedir;
 
   if (YES == [self hasPrefix: @"~"])
     {
       return IMMUTABLE(self);
     }
+  homedir = NSHomeDirectory();
   if (NO == [self hasPrefix: homedir])
     {
       /* OSX compatibility ... we clean up the path to try to get a

Modified: libs/base/trunk/Tests/base/NSString/tilde.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Tests/base/NSString/tilde.m?rev=39466&r1=39465&r2=39466&view=diff
==============================================================================
--- libs/base/trunk/Tests/base/NSString/tilde.m (original)
+++ libs/base/trunk/Tests/base/NSString/tilde.m Sat Mar  5 18:28:06 2016
@@ -32,9 +32,14 @@
   PASS_EQUAL([tmp stringByAbbreviatingWithTildeInPath], @"~/Documents/./..",
     "dot directory reference retained");
 
+#ifndef        _WIN32
+  /* This test can't work on windows, because the ome directory of a
+   * user doesn't start with a slash... don't run it on _WIN32
+   */
   tmp = [NSString stringWithFormat: @"////%@//Documents///", home];
   PASS_EQUAL([tmp stringByAbbreviatingWithTildeInPath], @"~/Documents",
     "multiple slashes removed");
+#endif
 
   PASS_EQUAL([@"//////Documents///" stringByAbbreviatingWithTildeInPath],
     @"/Documents",


_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs

Reply via email to