[slime-devel] PATCH: Improving interaction with other systems

Tobias C. Rittweiler tcr at freebits.de
Sat Mar 13 08:52:45 UTC 2010


Andrey Moskvitin <archimag at gmail.com> writes:

> Hi,
>
> Now Hunchentoot included the following code:
>
> (when (find-package :swank)
>   (ignore-errors
>     (eval `(,(find-symbol (string '#:add-hook) :swank)
>              ,(find-symbol (string '#:*connection-closed-hook*) :swank)
>              'after-close-swank-connection))))
>
> This does not seem reliable, but is absolutely necessary for a more safe
> debugging remote servers. I propose a patch that will rewrite this code more
> natural way:
>
> #+swank(swank:add-hook swank:*connection-closed-hook*
> 'after-close-swank-connection)
>
> See attachment.
>
>
> Moskvitin Andrey
>
> diff --git a/swank.lisp b/swank.lisp
> index e6caf78..23dae31 100644
> --- a/swank.lisp
> +++ b/swank.lisp
> @@ -25,6 +25,9 @@
>             #:invoke-slime-debugger
>             #:swank-debugger-hook
>             #:emacs-inspect
> +           #:add-hook
> +           #:*new-connection-hook*
> +           #:*connection-closed-hook*
>             ;;#:inspect-slot-for-emacs
>             ;; These are user-configurable variables:
>             #:*communication-style*
> @@ -3801,4 +3804,6 @@ Collisions are caused because package information is ignored."
>  (defun init ()
>    (run-hook *after-init-hook*))
>  
> +(pushnew :swank *features*)
> +
>  ;;; swank.lisp ends here
> \ No newline at end of file

I think this is reasonable. Out of interest, what does
after-close-swank-connection actually do?

  -T.





More information about the slime-devel mailing list