[slime-devel] Invalid characters and contrib/slime-repl.el

Mark Cox markcox80 at gmail.com
Thu Jun 25 04:38:47 UTC 2009


Hi slime-devel,

When an invalid character is sent to the remote lisp from the REPL, an  
error is signalled leaving the cursor in a funny position. The  
following patch to SLIME-REPL-EVAL-STRING fixes that by calling  
the :abort result handler.

Is there a case for putting this error handling in SLIME-DISPATCH- 
EVENT (:emacs-rex path) so all components get the :abort message when  
an error in transmission occurs?

Thanks
Mark

Index: slime-repl.el
===================================================================
RCS file: /project/slime/cvsroot/slime/contrib/slime-repl.el,v
retrieving revision 1.22
diff -r1.22 slime-repl.el
521,526c521,533
<   (slime-rex ()
<       ((list 'swank:listener-eval string) (slime-lisp-package))
<     ((:ok result)
<      (slime-repl-insert-result result))
<     ((:abort)
<      (slime-repl-show-abort))))
---
 >   (let ((send-error t))
 >     (unwind-protect
 > 	(progn
 > 	  (slime-rex ()
 > 	      ((list 'swank:listener-eval string) (slime-lisp-package))
 > 	    ((:ok result)
 > 	     (slime-repl-insert-result result))
 > 	    ((:abort)
 > 	     (slime-repl-show-abort))
 > 	    )
 > 	  (setf send-error nil))
 >       (when send-error
 > 	(slime-repl-show-abort)))))





More information about the slime-devel mailing list