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)))))