Detect connection failure.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@13231 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-Macdonald 2002-03-25 12:40:25 +00:00
parent 76d0757242
commit 60db9f064b
2 changed files with 14 additions and 1 deletions

View file

@ -7,6 +7,7 @@
not automatically flushed!
* Source/GSWindowsFileHandle.m: watch for exceptional conditions
so we can handle socket failures.
* Source/GSTcpPort.mL ditto.
2002-03-22 Richard Frith-Macdonald <rfm@gnu.org>

View file

@ -551,6 +551,10 @@ static Class runLoopClass;
type: ET_WDESC
watcher: self
forMode: NSDefaultRunLoopMode];
[l addEvent: (void*)(gsaddr)desc
type: ET_EDESC
watcher: self
forMode: NSDefaultRunLoopMode];
while (state == GS_H_TRYCON && [when timeIntervalSinceNow] > 0)
{
[l runMode: NSDefaultRunLoopMode beforeDate: when];
@ -559,6 +563,10 @@ static Class runLoopClass;
type: ET_WDESC
forMode: NSDefaultRunLoopMode
all: NO];
[l removeEvent: (void*)(gsaddr)desc
type: ET_EDESC
forMode: NSDefaultRunLoopMode
all: NO];
if (state == GS_H_TRYCON)
{
@ -713,6 +721,10 @@ static Class runLoopClass;
type: ET_WDESC
forMode: mode
all: YES];
[l removeEvent: data
type: ET_EDESC
forMode: mode
all: YES];
return;
}
@ -1021,7 +1033,7 @@ static Class runLoopClass;
}
}
}
else if (type == ET_WDESC)
else
{
if (state == GS_H_TRYCON) /* Connection attempt. */
{