~ chicken-core (chicken-5) 766056cd5f26b1d529405705449cb534609c113f
commit 766056cd5f26b1d529405705449cb534609c113f
Author: Peter Bex <peter.bex@xs4all.nl>
AuthorDate: Thu May 9 15:00:44 2013 +0200
Commit: Peter Bex <peter.bex@xs4all.nl>
CommitDate: Thu May 9 15:00:44 2013 +0200
Restore call to (yield) which got dropped on the floor in previous commit. This ensures tcp-connect will succeed properly even if connect()-operation in progress
diff --git a/tcp.scm b/tcp.scm
index 7e377217..a130d385 100644
--- a/tcp.scm
+++ b/tcp.scm
@@ -537,7 +537,8 @@ EOF
(cond ((eq? errno _einprogress)
(when dlc
(##sys#thread-block-for-timeout! ##sys#current-thread dlc))
- (##sys#thread-block-for-i/o! ##sys#current-thread s #:all))
+ (##sys#thread-block-for-i/o! ##sys#current-thread s #:all)
+ (##sys#thread-yield!))
((eq? errno _eintr)
(##sys#dispatch-interrupt loop))
(else
Trap