diff options
Diffstat (limited to 'lisp/server.el')
| -rw-r--r-- | lisp/server.el | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/lisp/server.el b/lisp/server.el index 8eb9dbb685e..6af9b9952d6 100644 --- a/lisp/server.el +++ b/lisp/server.el | |||
| @@ -764,14 +764,18 @@ Arg NEXT-BUFFER is a suggestion; if it is a live buffer, use it." | |||
| 764 | 764 | ||
| 765 | (define-key ctl-x-map "#" 'server-edit) | 765 | (define-key ctl-x-map "#" 'server-edit) |
| 766 | 766 | ||
| 767 | (defun server-unload-hook () | 767 | (defun server-unload-function () |
| 768 | "Unload the server library." | ||
| 768 | (server-mode -1) | 769 | (server-mode -1) |
| 769 | (remove-hook 'kill-buffer-query-functions 'server-kill-buffer-query-function) | 770 | (save-current-buffer |
| 770 | (remove-hook 'kill-emacs-query-functions 'server-kill-emacs-query-function) | 771 | (dolist (buffer (buffer-list)) |
| 771 | (remove-hook 'kill-buffer-hook 'server-kill-buffer)) | 772 | (set-buffer buffer) |
| 773 | (remove-hook 'kill-buffer-hook 'server-kill-buffer t))) | ||
| 774 | ;; continue standard unloading | ||
| 775 | nil) | ||
| 772 | 776 | ||
| 773 | (add-hook 'kill-emacs-hook (lambda () (server-mode -1))) ;Cleanup upon exit. | 777 | (add-hook 'kill-emacs-hook (lambda () (server-mode -1))) ;Cleanup upon exit. |
| 774 | (add-hook 'server-unload-hook 'server-unload-hook) | 778 | (defvar server-unload-function 'server-unload-function) |
| 775 | 779 | ||
| 776 | (provide 'server) | 780 | (provide 'server) |
| 777 | 781 | ||