# HG changeset patch # User Chong Yidong # Date 1286064224 14400 # Node ID 17914d74ccf4ed9c2f3ba05e99a067b8b57e1266 # Parent ab3815920cc5d5e96b5f10bdaecf19f283e43eb3 * lisp/server.el (server-process-filter, server-return-error): Give emacsclient time to shut down after receiving an error string. * etc/NEWS: Document tweak to emacsclient exit status. diff -r ab3815920cc5 -r 17914d74ccf4 etc/NEWS --- a/etc/NEWS Sat Oct 02 20:00:01 2010 -0400 +++ b/etc/NEWS Sat Oct 02 20:03:44 2010 -0400 @@ -66,10 +66,15 @@ * Changes in Emacs 24.1 -** New emacsclient argument --parent-id ID can be used to open a +** emacsclient changes + +*** New emacsclient argument --parent-id ID can be used to open a client frame in parent X window ID, via XEmbed. This works like the --parent-id argument to Emacs. +*** If emacsclient shuts down as a result of Emacs signalling an +error, its exit status is 1. + ** Completion can cycle, depending on completion-cycle-threshold. ** auto-mode-case-fold is now enabled by default. diff -r ab3815920cc5 -r 17914d74ccf4 lisp/ChangeLog --- a/lisp/ChangeLog Sat Oct 02 20:00:01 2010 -0400 +++ b/lisp/ChangeLog Sat Oct 02 20:03:44 2010 -0400 @@ -1,3 +1,8 @@ +2010-10-03 Chong Yidong + + * server.el (server-process-filter, server-return-error): Give + emacsclient time to shut down after receiving an error string. + 2010-10-02 Michael Albinus * files.el (remote-file-name-inhibit-cache): New defcustom. diff -r ab3815920cc5 -r 17914d74ccf4 lisp/server.el --- a/lisp/server.el Sat Oct 02 20:00:01 2010 -0400 +++ b/lisp/server.el Sat Oct 02 20:03:44 2010 -0400 @@ -876,6 +876,9 @@ (server-log "Authentication failed" proc) (server-send-string proc (concat "-error " (server-quote-arg "Authentication failed"))) + ;; Before calling `delete-process', give emacsclient time to + ;; receive the error string and shut down on its own. + (sit-for 1) (delete-process proc) ;; We return immediately (return-from server-process-filter))) @@ -1129,6 +1132,9 @@ proc (concat "-error " (server-quote-arg (error-message-string err)))) (server-log (error-message-string err) proc) + ;; Before calling `delete-process', give emacsclient time to + ;; receive the error string and shut down on its own. + (sit-for 5) (delete-process proc))) (defun server-goto-line-column (line-col)