Fixed async connect error check.

git-svn-id: http://voip.null.ro/svn/yate@5493 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
marian 2013-04-26 07:51:46 +00:00
parent 8f3daacf72
commit d0840bf68b
1 changed files with 4 additions and 5 deletions

View File

@ -1422,12 +1422,11 @@ bool Socket::connectAsync(struct sockaddr* addr, socklen_t addrlen, unsigned int
while (intervals) {
bool done = false;
bool event = false;
if (!select(0,&done,&event,Thread::idleUsec())) {
if (!error() && (done || event))
updateError();
if (!error())
return true;
if (!select(0,&done,&event,Thread::idleUsec()))
return false;
if (done || event) {
updateError();
return error() == 0;
}
if (Thread::check(false))
return false;