[slime-cvs] CVS slime

CVS User trittweiler trittweiler at common-lisp.net
Mon May 11 08:03:40 UTC 2009


Update of /project/slime/cvsroot/slime
In directory cl-net:/tmp/cvs-serv29865

Modified Files:
	ChangeLog slime.el 
Log Message:
	(slime-eval-feature-expression): Guard for more erroneous
	input (due to refontification while user's typing.)


--- /project/slime/cvsroot/slime/ChangeLog	2009/05/10 17:18:02	1.1742
+++ /project/slime/cvsroot/slime/ChangeLog	2009/05/11 08:03:39	1.1743
@@ -1,3 +1,8 @@
+2009-05-11  Tobias C. Rittweiler  <tcr at freebits.de>
+
+	(slime-eval-feature-expression): Guard for more erroneous
+	input (due to refontification while user's typing.)
+
 2009-05-10  Helmut Eller  <heller at common-lisp.net>
 
 	* slime.el ([test] font-lock-magic): Add some hard cases.
--- /project/slime/cvsroot/slime/slime.el	2009/05/10 17:18:03	1.1164
+++ /project/slime/cvsroot/slime/slime.el	2009/05/11 08:03:39	1.1165
@@ -8399,16 +8399,18 @@
 
 (defun slime-eval-feature-expression (e)
   "Interpret a reader conditional expression."
-  (if (symbolp e)
-      (memq (slime-keywordify e) (slime-lisp-features))
-      (funcall (let ((head (slime-keywordify (car e))))
-                 (case head
-                   (:and #'every)
-                   (:or #'some)
-                   (:not (lambda (f l) (not (apply f l))))
-                   (t (signal 'slime-unknown-feature-expression head))))
-               #'slime-eval-feature-expression
-               (cdr e))))
+  (cond ((symbolp e)
+         (memq (slime-keywordify e) (slime-lisp-features)))
+        ((and (consp e) (symbolp (car e)))
+         (funcall (let ((head (slime-keywordify (car e))))
+                    (case head
+                      (:and #'every)
+                      (:or #'some)
+                      (:not (lambda (f l) (not (apply f l))))
+                      (t (signal 'slime-unknown-feature-expression head))))
+                  #'slime-eval-feature-expression
+                  (cdr e)))
+        (t (signal 'slime-unknown-feature-expression e))))
 
 ;;;;; Extracting Lisp forms from the buffer or user
 





More information about the slime-cvs mailing list