diff --git a/server.ss b/server.ss index bc5d66b..c6b1121 100644 --- a/server.ss +++ b/server.ss @@ -36,14 +36,13 @@ (define-values (register-client get-output-port-list) (let ([output-port-list '()]) (values - (λ (port) (file-stream-buffer-mode port 'line) (set! output-port-list (cons port output-port-list)) (write '("server" "text" "Registered.") port) (flush-output port)) + (λ (port) (file-stream-buffer-mode port 'none) (set! output-port-list (cons port output-port-list)) (write '("server" "text" "Registered.") port)) (λ () output-port-list)))) ;Dispatching text (the function that actually does it) (define (dispatch name type message) (for ([port (get-output-port-list)]) (with-handlers (((lambda (exn) #t) (lambda (exn) (ignoring-errors (close-output-port port)) #t))) - (write `(,name ,type ,message) port) - (flush-output port)))) + (write `(,name ,type ,message) port)))) ;The server! This could possibly be better-named. Anyway, configurable port -- ;for now assuming that we want it to just listen on every address. Right now, ;only sending of source really works.