Thread fix for message ports

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19364 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-Macdonald 2004-05-17 13:22:52 +00:00
parent 6b8f60d133
commit ab2e1886ef
3 changed files with 21 additions and 1 deletions

View file

@ -1155,6 +1155,8 @@ static void clean_up_sockets(void)
NSMessagePort *port;
NSData *name;
NSMapEnumerator mEnum;
BOOL unknownThread = GSRegisterCurrentThread();
CREATE_AUTORELEASE_POOL(arp);
mEnum = NSEnumerateMapTable(messagePortMap);
while (NSNextMapEnumeratorPair(&mEnum, (void *)&name, (void *)&port))
@ -1163,6 +1165,11 @@ static void clean_up_sockets(void)
unlink([name bytes]);
}
NSEndMapTableEnumeration(&mEnum);
DESTROY(arp);
if (unknownThread == YES)
{
GSUnregisterCurrentThread();
}
}