mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-30 08:21:25 +00:00
mingw tidyups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@13603 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
4ef8c499f6
commit
c805754c59
3 changed files with 41 additions and 13 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2002-05-07 Richard Frith-Macdonald <rfm@gnu.org>
|
||||||
|
|
||||||
|
* Source/NSUser.m: mingw path fixes and debugging
|
||||||
|
* Source/NSFileManager.m: ditto
|
||||||
|
|
||||||
2002-05-06 Adam Fedor <fedor@gnu.org>
|
2002-05-06 Adam Fedor <fedor@gnu.org>
|
||||||
|
|
||||||
* Source/NSMethodSignature.m (-isEqual:): Implemented (from
|
* Source/NSMethodSignature.m (-isEqual:): Implemented (from
|
||||||
|
|
|
@ -1339,10 +1339,11 @@ static NSFileManager* defaultManager = nil;
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (l >= 3 && c_path[0] == '~' && c_path[2] == '/' && isalpha(c_path[1]))
|
if (l >= 2 && c_path[0] == '~' && isalpha(c_path[1])
|
||||||
|
&& (l == 2 || c_path[2] == '/'))
|
||||||
{
|
{
|
||||||
newpath = [NSString stringWithFormat: @"%c:%s", c_path[1],
|
newpath = [NSString stringWithFormat: @"%c:%s", c_path[1],
|
||||||
&c_path[2]];
|
&c_path[2]];
|
||||||
}
|
}
|
||||||
else if (l >= 3 && c_path[0] == '/' && c_path[1] == '/' && isalpha(c_path[2]))
|
else if (l >= 3 && c_path[0] == '/' && c_path[1] == '/' && isalpha(c_path[2]))
|
||||||
{
|
{
|
||||||
|
@ -1390,7 +1391,9 @@ static NSFileManager* defaultManager = nil;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
if (l >= 3 && c_path[0] == '/' && c_path[2] == '/' && isalpha(c_path[1]))
|
if (l >= 2 && c_path[0] == '/' && isalpha(c_path[1])
|
||||||
|
&& (l == 2 || c_path[2] == '/'))
|
||||||
|
|
||||||
{
|
{
|
||||||
/* Mingw /drive/... format */
|
/* Mingw /drive/... format */
|
||||||
newpath = [NSString stringWithFormat: @"%c:%s", c_path[1],
|
newpath = [NSString stringWithFormat: @"%c:%s", c_path[1],
|
||||||
|
@ -1425,6 +1428,7 @@ static NSFileManager* defaultManager = nil;
|
||||||
length: (unsigned int)len
|
length: (unsigned int)len
|
||||||
{
|
{
|
||||||
#ifdef __MINGW__
|
#ifdef __MINGW__
|
||||||
|
const char *ptr = string;
|
||||||
char buf[len + 20];
|
char buf[len + 20];
|
||||||
unsigned i;
|
unsigned i;
|
||||||
unsigned j;
|
unsigned j;
|
||||||
|
@ -1437,26 +1441,36 @@ static NSFileManager* defaultManager = nil;
|
||||||
{
|
{
|
||||||
return @"";
|
return @"";
|
||||||
}
|
}
|
||||||
if (len >= 2 && string[1] == ':' && isalpha(string[0]))
|
if (len >= 2 && ptr[1] == ':' && isalpha(ptr[0]))
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Convert '<driveletter>:' to '~<driveletter>/' sequences.
|
* Convert '<driveletter>:' to '~<driveletter>/' sequences.
|
||||||
*/
|
*/
|
||||||
buf[0] = '~';
|
buf[0] = '~';
|
||||||
buf[1] = string[0];
|
buf[1] = ptr[0];
|
||||||
buf[2] = '/';
|
buf[2] = '/';
|
||||||
string--;
|
ptr -= 1;
|
||||||
len++;
|
len++;
|
||||||
i = 3;
|
i = 3;
|
||||||
}
|
}
|
||||||
#ifdef __CYGWIN__
|
#ifdef __CYGWIN__
|
||||||
else if (len > 9 && strncmp(string, "/cygdrive/", 10) == 0)
|
else if (len > 9 && strncmp(ptr, "/cygdrive/", 10) == 0)
|
||||||
{
|
{
|
||||||
buf[0] = '~';
|
buf[0] = '~';
|
||||||
string += 9;
|
ptr += 9;
|
||||||
len -= 9;
|
len -= 9;
|
||||||
i = 1;
|
i = 1;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
else if (len >= 2 && ptr[0] == '/' && isalpha(ptr[1])
|
||||||
|
&& (len == 2 || ptr[2] == '/'))
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Convert '/<driveletter>' to '~<driveletter>' sequences.
|
||||||
|
*/
|
||||||
|
buf[0] = '~';
|
||||||
|
i = 1;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1469,7 +1483,7 @@ static NSFileManager* defaultManager = nil;
|
||||||
j = i;
|
j = i;
|
||||||
while (i < len)
|
while (i < len)
|
||||||
{
|
{
|
||||||
if (string[i] == '\\')
|
if (ptr[i] == '\\')
|
||||||
{
|
{
|
||||||
if (j == 0 || buf[j-1] != '/')
|
if (j == 0 || buf[j-1] != '/')
|
||||||
{
|
{
|
||||||
|
@ -1485,10 +1499,12 @@ static NSFileManager* defaultManager = nil;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
buf[j++] = string[i];
|
buf[j++] = ptr[i];
|
||||||
}
|
}
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
buf[j] = '\0';
|
||||||
|
// NSLog(@"Map '%s' to '%s'", string, buf);
|
||||||
return [NSString stringWithCString: buf length: j];
|
return [NSString stringWithCString: buf length: j];
|
||||||
#endif
|
#endif
|
||||||
return [NSString stringWithCString: string length: len];
|
return [NSString stringWithCString: string length: len];
|
||||||
|
|
|
@ -144,9 +144,9 @@ NSUserName(void)
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
DWORD n = 1024;
|
DWORD n = 1024;
|
||||||
|
|
||||||
if (GetEnvironmentVariable("LOGNAME", buf, 1024))
|
if (GetEnvironmentVariable("LOGNAME", buf, 1024) != 0 && buf[0] != '\0')
|
||||||
loginName = buf;
|
loginName = buf;
|
||||||
else if (GetUserName(buf, &n))
|
else if (GetUserName(buf, &n) != 0 && buf[0] != '\0')
|
||||||
loginName = buf;
|
loginName = buf;
|
||||||
#else
|
#else
|
||||||
loginName = getenv("LOGNAME");
|
loginName = getenv("LOGNAME");
|
||||||
|
@ -268,8 +268,15 @@ NSHomeDirectoryForUser(NSString *loginName)
|
||||||
}
|
}
|
||||||
[gnustep_global_lock unlock];
|
[gnustep_global_lock unlock];
|
||||||
}
|
}
|
||||||
|
if ([s length] == 0 && [loginName length] != 1)
|
||||||
|
{
|
||||||
|
s = nil;
|
||||||
|
NSLog(@"NSHomeDirectoryForUser(%@) failed", loginName);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
return ImportPath(s, 0);
|
s = ImportPath(s, 0);
|
||||||
|
// NSLog(@"Home for %@ is %@", loginName, s);
|
||||||
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue