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

Helmut Eller heller at common-lisp.net
Tue May 31 18:37:53 UTC 2005


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

Modified Files:
	swank.lisp 
Log Message:
(simple-announce-function): force-output after announcing.	

(symbol-external-p): Be extra paranoid about the symbol's package;
find-symbol barfs on a nil package in Corman Lisp.

Date: Tue May 31 20:37:52 2005
Author: heller

Index: slime/swank.lisp
diff -u slime/swank.lisp:1.302 slime/swank.lisp:1.303
--- slime/swank.lisp:1.302	Sat May 21 07:04:02 2005
+++ slime/swank.lisp	Tue May 31 20:37:52 2005
@@ -414,7 +414,8 @@
 
 (defun simple-announce-function (port)
   (when *swank-debug-p*
-    (format *debug-io* "~&;; Swank started at port: ~D.~%" port)))
+    (format *debug-io* "~&;; Swank started at port: ~D.~%" port)
+    (force-output *debug-io*)))
 
 (defun open-streams (connection)
   "Return the 4 streams for IO redirection:
@@ -2359,10 +2360,13 @@
 (defun symbol-external-p (symbol &optional (package (symbol-package symbol)))
   "True if SYMBOL is external in PACKAGE.
 If PACKAGE is not specified, the home package of SYMBOL is used."
-  (multiple-value-bind (_ status)
-      (find-symbol (symbol-name symbol) (or package (symbol-package symbol)))
-    (declare (ignore _))
-    (eq status :external)))
+  (unless package
+    (setq package (symbol-package symbol)))
+  (when package
+    (multiple-value-bind (_ status)
+        (find-symbol (symbol-name symbol) package)
+      (declare (ignore _))
+      (eq status :external))))
  
 (defun find-matching-packages (name matcher)
   "Return a list of package names matching NAME with MATCHER.




More information about the slime-cvs mailing list