mirror of
https://github.com/gnustep/libs-base.git
synced 2025-04-26 18:21:04 +00:00
Minor fix for invalidation error.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@13513 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
381ed5d34e
commit
add42425be
2 changed files with 13 additions and 4 deletions
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
* Tools/gdnc.m: If given -NSHost specification for the current host,
|
* Tools/gdnc.m: If given -NSHost specification for the current host,
|
||||||
ignore it and use the standard name.
|
ignore it and use the standard name.
|
||||||
|
* Source/GSTcpPort.m: ([-invalidate]) call superclass implementation
|
||||||
|
at end ... so handles can find this port when they are destroying
|
||||||
|
themselves. Reverses last change I made to this.
|
||||||
|
|
||||||
2002-04-18 Richard Frith-Macdonald <rfm@gnu.org>
|
2002-04-18 Richard Frith-Macdonald <rfm@gnu.org>
|
||||||
|
|
||||||
|
|
|
@ -1769,8 +1769,6 @@ static Class tcpPortClass;
|
||||||
NSArray *handleArray;
|
NSArray *handleArray;
|
||||||
unsigned i;
|
unsigned i;
|
||||||
|
|
||||||
[super invalidate]; // Avoid recursive calls
|
|
||||||
|
|
||||||
[tcpPortLock lock];
|
[tcpPortLock lock];
|
||||||
thePorts = NSMapGet(tcpPortMap, (void*)(gsaddr)portNum);
|
thePorts = NSMapGet(tcpPortMap, (void*)(gsaddr)portNum);
|
||||||
if (thePorts != 0)
|
if (thePorts != 0)
|
||||||
|
@ -1794,9 +1792,17 @@ static Class tcpPortClass;
|
||||||
|
|
||||||
[handle invalidate];
|
[handle invalidate];
|
||||||
}
|
}
|
||||||
NSFreeMapTable(handles);
|
/*
|
||||||
handles = 0;
|
* We permit mutual recursive invalidation, so the handles map
|
||||||
|
* may already have been destroyed.
|
||||||
|
*/
|
||||||
|
if (handles != 0)
|
||||||
|
{
|
||||||
|
NSFreeMapTable(handles);
|
||||||
|
handles = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
[super invalidate];
|
||||||
}
|
}
|
||||||
DO_UNLOCK(myLock);
|
DO_UNLOCK(myLock);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue