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

Helmut Eller heller at common-lisp.net
Sat Nov 8 16:59:38 UTC 2003


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

Modified Files:
	swank.lisp 
Log Message:
(completions): Use *buffer-package* if no other package is given.
(case-convert): Only accept strings as argument.

Date: Sat Nov  8 11:59:38 2003
Author: heller

Index: slime/swank.lisp
diff -u slime/swank.lisp:1.55 slime/swank.lisp:1.56
--- slime/swank.lisp:1.55	Tue Nov  4 17:33:31 2003
+++ slime/swank.lisp	Sat Nov  8 11:59:38 2003
@@ -377,6 +377,7 @@
 
 (defun case-convert (string)
   "Convert STRING according to the current readtable-case."
+  (check-type string string)
   (ecase (readtable-case *readtable*)
     (:upcase (string-upcase string))
     (:downcase (string-downcase string))
@@ -401,11 +402,11 @@
   (multiple-value-bind (name package-name internal-p)
       (parse-symbol-designator string)
     (let ((completions nil)
-          (package (find-package 
-                    (case-convert
-                     (cond ((equal package-name "") "KEYWORD")
-                           (package-name)
-                           (default-package-name))))))
+          (package (let ((n (cond ((equal package-name "") "KEYWORD")
+                                  (t (or package-name default-package-name)))))
+                     (if n 
+                         (find-package (case-convert n))
+                         *buffer-package* ))))
       (flet ((symbol-matches-p (symbol)
                (and (string-prefix-p name (symbol-name symbol))
                     (or (or internal-p (null package-name))





More information about the slime-cvs mailing list