diff --git a/module/system/repl/server.scm b/module/system/repl/server.scm index ec9067745..2df7564ac 100644 --- a/module/system/repl/server.scm +++ b/module/system/repl/server.scm @@ -67,27 +67,10 @@ (bind sock AF_UNIX path) sock)) -(define call-with-sigint - (if (not (provided? 'posix)) - (lambda (thunk) (thunk)) - (lambda (thunk) - (let ((handler #f)) - (dynamic-wind - (lambda () - (set! handler - (sigaction SIGINT (lambda (sig) (throw 'interrupt))))) - thunk - (lambda () - (if handler - ;; restore Scheme handler, SIG_IGN or SIG_DFL. - (sigaction SIGINT (car handler) (cdr handler)) - ;; restore original C handler. - (sigaction SIGINT #f)))))))) - (define* (run-server #:optional (server-socket (make-tcp-server-socket))) (define (accept-new-client) (catch #t - (lambda () (call-with-sigint (lambda () (accept server-socket)))) + (lambda () (accept server-socket)) (lambda (k . args) (cond ((port-closed? server-socket)