From 4e67fdd554df4007c4db1abc1ae9b12e134ebf65 Mon Sep 17 00:00:00 2001 From: fedor Date: Sun, 28 Oct 2001 16:53:21 +0000 Subject: [PATCH] Startup fixes git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@11267 72102866-910b-0410-8b05-ffd578937521 --- ChangeLog | 8 ++++++++ Source/NSFileManager.m | 3 ++- Source/NSUserDefaults.m | 5 +++++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index b630c4148..fbcc7eb20 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2001-10-28 Adam Fedor + + * Source/NSFileManager.m (_attributesAtPath:traverseLink:forCopy:): + Make NSLog message into fprintf to avoid recursion. + + * Source/NSUserDefaults.m (pathForUser): Create ~/GNUstep/Library + if it doesn't exist. + 2001-10-26 Adam Fedor * configure (z): Check for gzseek in zlib since older zlibs don't diff --git a/Source/NSFileManager.m b/Source/NSFileManager.m index 01c532e61..081ad3efd 100644 --- a/Source/NSFileManager.m +++ b/Source/NSFileManager.m @@ -2079,7 +2079,8 @@ static int sparc_warn = 0; if (sparc_warn == 0) { sparc_warn = 1; - NSLog(@"WARNING (NSFileManager): Disabling group enums (setgrent, etc) since this crashes gdb on sparc machines"); + /* Can't be NSLog - causes recursion in [NSUser -synchronize] */ + fprintf(stderr, "WARNING (NSFileManager): Disabling group enums (setgrent, etc) since this crashes gdb on sparc machines"); } #endif values[9] = @"UnknownGroup"; diff --git a/Source/NSUserDefaults.m b/Source/NSUserDefaults.m index 409e98fe4..696be5f52 100644 --- a/Source/NSUserDefaults.m +++ b/Source/NSUserDefaults.m @@ -435,6 +435,7 @@ static NSString *pathForUser(NSString *user) NSFileManager *mgr = [NSFileManager defaultManager]; NSString *home; NSString *path; + NSString *libpath; BOOL isDir; home = NSHomeDirectoryForUser(user); @@ -461,6 +462,10 @@ static NSString *pathForUser(NSString *user) NSLog(@"ERROR - '%@' is not a directory!", path); return nil; } + /* Create this path also. The GUI/font cache depends on it being there */ + libpath = [path stringByAppendingPathComponent: @"Library"]; + if ([mgr fileExistsAtPath: libpath isDirectory: &isDir] == NO) + [mgr createDirectoryAtPath: libpath attributes: nil]; path = [path stringByAppendingPathComponent: GNU_UserDefaultsDatabase]; return path; }