Change CONNECT-SOCKET to pass underlying file descriptor to SELECT to

prevent SELECT non-blocking because there's space in the buffer.
This commit is contained in:
sperber 2002-11-12 13:14:44 +00:00
parent a206e4f70a
commit a73f146a23
1 changed files with 5 additions and 1 deletions

View File

@ -241,7 +241,11 @@
(if (car error?.einprogress?)
(if (cdr error?.einprogress?)
(begin
(select '#() (vector (socket:outport sock)) '#())
(select '#()
(vector (fdport-data:fd
(fdport-data
(socket:outport sock))))
'#())
;; If connect returned EINPROGRESS, we can check
;; it's success after the next success with getsockopt
(let ((val (socket-option sock