Name server minor safety and performance tweak

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37956 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2014-06-20 14:17:17 +00:00
parent e421465740
commit 8065366cfa
3 changed files with 22 additions and 3 deletions

View file

@ -133,8 +133,13 @@ static NSMapTable *portToNamesMap;
NSEnumerator *files;
serverLock = [NSRecursiveLock new];
portToNamesMap = NSCreateMapTable(NSNonRetainedObjectMapKeyCallBacks,
NSObjectMapValueCallBacks, 0);
/* Use NSNonOwnedPointerMapKeyCallBacks for the ports used as keys
* since we want as pointer test for equality as we may be doing
* lookup while dealocating the port (in which case the -isEqual:
* method could fail).
*/
portToNamesMap = NSCreateMapTable(NSNonOwnedPointerMapKeyCallBacks,
NSObjectMapValueCallBacks, 0);
[self registerAtExit];
/* It's possible that an old process, with the same process ID as