summaryrefslogtreecommitdiff
path: root/lisp/server.el
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1994-05-19 05:58:21 +0000
committerRichard M. Stallman <rms@gnu.org>1994-05-19 05:58:21 +0000
commite200fbb896d17b557c21cf2846d1e03791e9e871 (patch)
tree7bee196ec9bc3c409a028ee0ad0d5971bd13fc74 /lisp/server.el
parent64f5ae49c567760d7eb6fa7eb46a9cce9574e8c4 (diff)
downloademacs-e200fbb896d17b557c21cf2846d1e03791e9e871.tar.gz
(server-done): Never kill buffer here.
(server-buffer-done): Do it here, if temp file.
Diffstat (limited to 'lisp/server.el')
-rw-r--r--lisp/server.el12
1 files changed, 6 insertions, 6 deletions
diff --git a/lisp/server.el b/lisp/server.el
index a3186c9da29..794f95e9039 100644
--- a/lisp/server.el
+++ b/lisp/server.el
@@ -251,7 +251,9 @@ as a suggestion for what to select next."
(save-excursion
(set-buffer buffer)
(setq server-buffer-clients nil))
- (bury-buffer buffer)))
+ (if (server-temp-file-p buffer)
+ (kill-buffer buffer)
+ (bury-buffer buffer))))
next-buffer))
(defun server-temp-file-p (buffer)
@@ -269,19 +271,17 @@ are considered temporary."
Then bury it, and return a suggested buffer to select next."
(let ((buffer (current-buffer)))
(if server-buffer-clients
- (let (suggested-buffer)
+ (progn
(if (server-temp-file-p buffer)
;; For a temp file, save, and do make a non-numeric backup
;; (unless make-backup-files is nil).
(let ((version-control nil)
(buffer-backed-up nil))
- (save-buffer)
- (kill-buffer buffer)
- (setq suggested-buffer (current-buffer)))
+ (save-buffer))
(if (and (buffer-modified-p)
(y-or-n-p (concat "Save file " buffer-file-name "? ")))
(save-buffer buffer)))
- (or (server-buffer-done buffer) suggested-buffer)))))
+ (server-buffer-done buffer)))))
;; If a server buffer is killed, release its client.
;; I'm not sure this is really a good idea--do you want the client