diff --git a/ChangeLog b/ChangeLog index 74fdcd1d3..6fc608d17 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2004-05-14 Adam Fedor + * Source/NSDocumentController.m ([NSDocumentController -currentDirectory]): + Conform to the documentation. (Fixes #7900). + * Tools/gsnd/gsnd.m: Rename variables starting with _, indent lines properly (Fixes #7502). diff --git a/Source/NSDocumentController.m b/Source/NSDocumentController.m index 5a889dc62..08d122b45 100644 --- a/Source/NSDocumentController.m +++ b/Source/NSDocumentController.m @@ -611,13 +611,11 @@ static NSDictionary *TypeInfoForName (NSArray *types, NSString *typeName) NSString *directory; BOOL isDir = NO; - if (document == nil) - document = [[self documents] lastObject]; - directory = [[document fileName] stringByDeletingLastPathComponent]; - if (directory == nil) - directory = [[NSUserDefaults standardUserDefaults] - objectForKey: NSDefaultOpenDirectory]; - if (directory == nil + if (document) + directory = [[document fileName] stringByDeletingLastPathComponent]; + else + directory = [[NSOpenPanel openPanel] directory]; + if (directory == nil || [directory isEqual: @""] || [manager fileExistsAtPath: directory isDirectory: &isDir] == NO || isDir == NO) {