diff options
author | Lars Ingebrigtsen <larsi@gnus.org> | 2021-05-08 14:22:30 +0200 |
---|---|---|
committer | Lars Ingebrigtsen <larsi@gnus.org> | 2021-05-08 14:22:30 +0200 |
commit | 53dfb51f55bf66bb939505c60d12952dd64820a7 (patch) | |
tree | 434fa17085525247fee2efbe4c1239aafce194cb | |
parent | 12a37ef6d248ad101407e1800542bc6995044d95 (diff) | |
download | emacs-53dfb51f55bf66bb939505c60d12952dd64820a7.tar.gz emacs-53dfb51f55bf66bb939505c60d12952dd64820a7.tar.bz2 emacs-53dfb51f55bf66bb939505c60d12952dd64820a7.zip |
Don't delete socket on server exit if it was passed in
* lisp/server.el (server-sentinel): Don't delete the socket if it
was passed in to Emacs (bug#47511).
-rw-r--r-- | lisp/server.el | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lisp/server.el b/lisp/server.el index 220694f6cbf..17332a2b0a1 100644 --- a/lisp/server.el +++ b/lisp/server.el @@ -413,9 +413,14 @@ If CLIENT is non-nil, add a description of it to the logged message." ;; for possible servers before doing anything, so it *should* be ours. (and (process-contact proc :server) (eq (process-status proc) 'closed) + ;; If this variable is non-nil, the socket was passed in to + ;; Emacs, and not created by Emacs itself (for instance, + ;; created by systemd). In that case, don't delete the socket. + (not internal--daemon-sockname) (ignore-errors (delete-file (process-get proc :server-file)))) - (server-log (format "Status changed to %s: %s" (process-status proc) msg) proc) + (server-log (format "Status changed to %s: %s" + (process-status proc) msg) proc) (server-delete-client proc)) (defun server--on-display-p (frame display) |