Skip to content

Commit d98029a

Browse files
committed
Minor cleanup
1 parent 843f8aa commit d98029a

File tree

1 file changed

+17
-21
lines changed

1 file changed

+17
-21
lines changed

sitelib/net/socket.scm

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -442,33 +442,34 @@
442442
(when (procedure? error-reporter)
443443
(guard (e (else #f)) (error-reporter event e))))
444444

445+
;; selector returns list of `(socket timeout . data)
445446
(define (->on-read-data sock) `(,@(cddr sock) #f))
446447
(define (->timeout-data sock)
447448
(let-values (((on-read socket timeout) (apply values (cddr sock))))
448449
(let ((e (make-selector-timeout-condition socket timeout)))
449450
(list on-read socket timeout e))))
450451

451452
(define (selector-waiter)
452-
(let wait-selector ()
453-
(guard (e (else (on-error 'selector e) #f))
454-
(unless (socket-selector-closed? selector)
455-
(let-values (((socks timedouts) (socket-selector-wait! selector)))
456-
(actor-send-message! on-read-actor (map ->on-read-data socks))
457-
(actor-send-message! on-read-actor (map ->timeout-data timedouts))
458-
(wait-selector))))))
453+
(guard (e (else (on-error 'selector e) #f))
454+
(unless (socket-selector-closed? selector)
455+
(let-values (((socks timedouts) (socket-selector-wait! selector)))
456+
(actor-send-message! on-read-actor (map ->on-read-data socks))
457+
(actor-send-message! on-read-actor (map ->timeout-data timedouts))
458+
(selector-waiter)))))
459459

460460
(define (dispatch-socket receiver sender)
461461
(define (call-on-read e)
462-
(let-values (((on-read sock timeout e) (apply values e)))
463-
(unless (socket-closed? sock)
464-
(on-read sock e
465-
(case-lambda
466-
(() (push-socket sock on-read timeout))
467-
((timeout) (push-socket sock on-read timeout)))))))
462+
(guard (e (else (on-error 'on-read e) #t))
463+
(let-values (((on-read sock timeout e) (apply values e)))
464+
(unless (socket-closed? sock)
465+
(on-read sock e
466+
(case-lambda
467+
(() (push-socket sock on-read timeout))
468+
((timeout)
469+
(push-socket sock on-read (make-timeout timeout)))))))))
468470
(let loop ((e* (receiver)))
469471
(when e*
470-
(guard (e (else (on-error 'on-read e) #t))
471-
(for-each call-on-read e*))
472+
(for-each call-on-read e*)
472473
(loop (receiver)))))
473474

474475
(define socket-poll-thread
@@ -520,11 +521,6 @@
520521
(make-irritants-condition timeout)))
521522

522523
(define (name-factory prefix) (lambda () (gensym prefix)))
523-
(define socket-poll-name-factory (name-factory "socket-poll-"))
524524
(define on-read-name-factory (name-factory "on-read-"))
525-
(define (get-timeout t0 t1)
526-
(cond ((and t0 t1) (if (time<? t0 t1) t0 t1))
527-
(t0)
528-
(t1)
529-
(else #f)))
525+
530526
)

0 commit comments

Comments
 (0)