diff --git a/Source/NSDistributedNotificationCenter.m b/Source/NSDistributedNotificationCenter.m index 8ab27d2f1..c8419675c 100644 --- a/Source/NSDistributedNotificationCenter.m +++ b/Source/NSDistributedNotificationCenter.m @@ -25,25 +25,26 @@ $Date$ $Revision$ */ -#include "config.h" -#include "GNUstepBase/preface.h" -#include "Foundation/NSObject.h" -#include "Foundation/NSConnection.h" -#include "Foundation/NSDistantObject.h" -#include "Foundation/NSException.h" -#include "Foundation/NSArchiver.h" -#include "Foundation/NSNotification.h" -#include "Foundation/NSDate.h" -#include "Foundation/NSPathUtilities.h" -#include "Foundation/NSRunLoop.h" -#include "Foundation/NSTask.h" -#include "Foundation/NSDistributedNotificationCenter.h" -#include "Foundation/NSUserDefaults.h" -#include "Foundation/NSHost.h" -#include "Foundation/NSPortNameServer.h" -#include "Foundation/NSDebug.h" -#include "Foundation/NSThread.h" -#include "../Tools/gdnc.h" +#import "config.h" +#import "GNUstepBase/preface.h" +#import "Foundation/NSObject.h" +#import "Foundation/NSConnection.h" +#import "Foundation/NSDistantObject.h" +#import "Foundation/NSException.h" +#import "Foundation/NSFileManager.h" +#import "Foundation/NSArchiver.h" +#import "Foundation/NSNotification.h" +#import "Foundation/NSDate.h" +#import "Foundation/NSPathUtilities.h" +#import "Foundation/NSRunLoop.h" +#import "Foundation/NSTask.h" +#import "Foundation/NSDistributedNotificationCenter.h" +#import "Foundation/NSUserDefaults.h" +#import "Foundation/NSHost.h" +#import "Foundation/NSPortNameServer.h" +#import "Foundation/NSDebug.h" +#import "Foundation/NSThread.h" +#import "../Tools/gdnc.h" @interface NSDistributedNotificationCenter (Private) @@ -694,11 +695,23 @@ static NSDistributedNotificationCenter *netCenter = nil; NSString *cmd = nil; NSArray *args = nil; NSDate *limit; + NSEnumerator *enumerator; + NSString *path; + NSFileManager *mgr; - cmd = [[NSSearchPathForDirectoriesInDomains( - GSToolsDirectory, NSSystemDomainMask, YES) objectAtIndex: 0] - stringByAppendingPathComponent: @"gdnc"]; - + mgr = [NSFileManager defaultManager]; + enumerator = [NSSearchPathForDirectoriesInDomains( + GSToolsDirectory, NSAllDomainsMask, YES) objectEnumerator]; + while ((path = [enumerator nextObject]) != nil) + { + path = [path stringByAppendingPathComponent: @"gdnc"]; + if ([mgr isExecutableFileAtPath: path]) + { + cmd = path; + break; + } + } + NSDebugMLLog(@"NSDistributedNotificationCenter", @"\nI couldn't contact the notification server for %@ -\n" @"so I'm attempting to to start one - which will take a few seconds.\n" diff --git a/Source/NSSocketPortNameServer.m b/Source/NSSocketPortNameServer.m index 630747ed0..2683dfde5 100644 --- a/Source/NSSocketPortNameServer.m +++ b/Source/NSSocketPortNameServer.m @@ -24,29 +24,30 @@ $Date$ $Revision$ */ -#include "config.h" -#include "Foundation/NSString.h" -#include "Foundation/NSData.h" -#include "Foundation/NSByteOrder.h" -#include "Foundation/NSException.h" -#include "Foundation/NSAutoreleasePool.h" -#include "Foundation/NSLock.h" -#include "Foundation/NSFileHandle.h" -#include "Foundation/NSRunLoop.h" -#include "Foundation/NSNotification.h" -#include "Foundation/NSNotificationQueue.h" -#include "Foundation/NSPort.h" -#include "Foundation/NSMapTable.h" -#include "Foundation/NSSet.h" -#include "Foundation/NSHost.h" -#include "Foundation/NSTask.h" -#include "Foundation/NSDate.h" -#include "Foundation/NSTimer.h" -#include "Foundation/NSPathUtilities.h" -#include "Foundation/NSPortNameServer.h" -#include "Foundation/NSDebug.h" +#import "config.h" +#import "Foundation/NSString.h" +#import "Foundation/NSData.h" +#import "Foundation/NSByteOrder.h" +#import "Foundation/NSException.h" +#import "Foundation/NSAutoreleasePool.h" +#import "Foundation/NSFileManager.h" +#import "Foundation/NSLock.h" +#import "Foundation/NSFileHandle.h" +#import "Foundation/NSRunLoop.h" +#import "Foundation/NSNotification.h" +#import "Foundation/NSNotificationQueue.h" +#import "Foundation/NSPort.h" +#import "Foundation/NSMapTable.h" +#import "Foundation/NSSet.h" +#import "Foundation/NSHost.h" +#import "Foundation/NSTask.h" +#import "Foundation/NSDate.h" +#import "Foundation/NSTimer.h" +#import "Foundation/NSPathUtilities.h" +#import "Foundation/NSPortNameServer.h" +#import "Foundation/NSDebug.h" -#include "GSPortPrivate.h" +#import "GSPortPrivate.h" #ifdef __MINGW32__ #include @@ -186,9 +187,22 @@ typedef enum { [self close]; if (launchCmd == nil) { - launchCmd = RETAIN([[NSSearchPathForDirectoriesInDomains( - GSToolsDirectory, NSSystemDomainMask, YES) objectAtIndex: 0] - stringByAppendingPathComponent: @"gdomap"]); + NSEnumerator *enumerator; + NSString *path; + NSFileManager *mgr; + + mgr = [NSFileManager defaultManager]; + enumerator = [NSSearchPathForDirectoriesInDomains( + GSToolsDirectory, NSAllDomainsMask, YES) objectEnumerator]; + while ((path = [enumerator nextObject]) != nil) + { + path = [path stringByAppendingPathComponent: @"gdomap"]; + if ([mgr isExecutableFileAtPath: path]) + { + launchCmd = path; + break; + } + } } if (state == GSPC_LOPEN && launchCmd != nil) {