Subject: Re: bug#8942: 23.3; emacsclient doesn't exit when called Emacs function is quited.

From: Juanma Barranquero <[email-masked]>
Date: Mon, 4 Jul 2011 20:06:24 +0200

On Mon, Jul 4, 2011 at 19:57, Stefan Monnier <[email-masked]> wrote:

> So if you want to remove with-local-quit, you need to add a let-binding
> of inhibit-quit to nil within your condition-case.

No, I don't have a particular interest in removing with-local-quit. As
I said, this

=== modified file 'lisp/server.el'
--- lisp/server.el      2011-07-04 01:04:29 +0000
+++ lisp/server.el      2011-07-04 18:04:02 +0000
@@ -1153,7 +1153,7 @@
                              "When done with a buffer, type
\\[server-edit]")))))
           (when (and frame (null tty-name))
             (server-unselect-display frame)))
-      (error (server-return-error proc err)))))
+      ((error quit) (server-return-error proc err)))))

 (defun server-return-error (proc err)
   (ignore-errors

is more than enough to fix the bug. The question is if you still want
to show the user some feedback about the fact that he quit the
emacsclient eval, and how to do so.  (message "Quit") perhaps? :-)

    Juanma