summaryrefslogtreecommitdiff
path: root/module/system/repl/server.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2017-03-01 17:23:29 +0100
committerAndy Wingo <wingo@pobox.com>2017-03-01 17:23:29 +0100
commit0cd60c3f2660f6fe08845a4bc1836ac8e933e9e6 (patch)
treeaa9c3807d607d8387146d3a1cba4729e9efd4d94 /module/system/repl/server.scm
parent374b88580c388af1e96ff82cedd2b6f9a708580b (diff)
downloadguile-0cd60c3f2660f6fe08845a4bc1836ac8e933e9e6.tar.gz
Cosmetic REPL server improvements
* module/system/repl/server.scm (run-server*): Cosmetic improvements.
Diffstat (limited to 'module/system/repl/server.scm')
-rw-r--r--module/system/repl/server.scm20
1 files changed, 10 insertions, 10 deletions
diff --git a/module/system/repl/server.scm b/module/system/repl/server.scm
index f6981edf0..cdb43cd7b 100644
--- a/module/system/repl/server.scm
+++ b/module/system/repl/server.scm
@@ -116,16 +116,16 @@
(sigaction SIGPIPE SIG_IGN)
(add-open-socket! server-socket shutdown-server)
(listen server-socket 5)
- (let lp ((client (accept-new-client)))
- ;; If client is false, we are shutting down.
- (if client
- (let ((client-socket (car client))
- (client-addr (cdr client)))
- (make-thread serve-client client-socket client-addr)
- (lp (accept-new-client)))
- (begin (close shutdown-write-pipe)
- (close shutdown-read-pipe)
- (close server-socket)))))
+ (let lp ()
+ (match (accept-new-client)
+ (#f
+ ;; If client is false, we are shutting down.
+ (close shutdown-write-pipe)
+ (close shutdown-read-pipe)
+ (close server-socket))
+ ((client-socket . client-addr)
+ (make-thread serve-client client-socket client-addr)
+ (lp)))))
(define* (spawn-server #:optional (server-socket (make-tcp-server-socket)))
(make-thread run-server server-socket))