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