[slime-cvs] CVS update: slime/swank.lisp

Helmut Eller heller at common-lisp.net
Fri Nov 11 23:47:51 UTC 2005


Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv7608

Modified Files:
	swank.lisp 
Log Message:
(*dedicated-output-stream-buffering*): New variable to customize the
buffering scheme.  For single-threaded Lisps we disable buffering
because lazy programmers forget to call finish-output.
(open-dedicated-output-stream): Use it.

Date: Sat Nov 12 00:47:50 2005
Author: heller

Index: slime/swank.lisp
diff -u slime/swank.lisp:1.351 slime/swank.lisp:1.352
--- slime/swank.lisp:1.351	Fri Nov  4 10:04:40 2005
+++ slime/swank.lisp	Sat Nov 12 00:47:50 2005
@@ -337,11 +337,17 @@
 (defvar *use-dedicated-output-stream* t
   "When T swank will attempt to create a second connection to
   Emacs which is used just to send output.")
+
 (defvar *dedicated-output-stream-port* 0
   "Which port we should use for the dedicated output stream.")
 
 (defvar *communication-style* (preferred-communication-style))
 
+(defvar *dedicated-output-stream-buffering* 
+  (if (eq *communication-style* :spawn) :full :none)
+  "The buffering scheme that should be used for the output stream.
+Valid values are :none, :line, and :full.")
+
 (defun start-server (port-file &key (style *communication-style*)
                      dont-close (external-format *coding-system*))
   "Start the server and write the listen port number to PORT-FILE.
@@ -478,7 +484,8 @@
          (port (local-port socket)))
     (encode-message `(:open-dedicated-output-stream ,port) socket-io)
     (accept-authenticated-connection
-     socket :external-format external-format)))
+     socket :external-format external-format 
+     :buffering *dedicated-output-stream-buffering*)))
 
 (defun handle-request (connection)
   "Read and process one request.  The processing is done in the extend




More information about the slime-cvs mailing list