1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-23 18:47:57 +00:00

(server-start): Set coding system for the server

process to raw-text.
(server-process-filter): Decode file names if necessary.
This commit is contained in:
Kenichi Handa 1999-03-13 00:21:24 +00:00
parent bdcb0e25c9
commit 6b7430a8ac

View File

@ -195,6 +195,10 @@ Prefix arg means just kill any existing server communications subprocess."
(setq server-process (start-process "server" nil server-program)))
(set-process-sentinel server-process 'server-sentinel)
(set-process-filter server-process 'server-process-filter)
;; We must receive file names without being decoded. Those are
;; decoded by server-process-filter accoding to
;; file-name-coding-system.
(set-process-coding-system server-process 'raw-text 'raw-text)
(process-kill-without-query server-process)))
;Process a request from the server to edit some files.
@ -206,6 +210,9 @@ Prefix arg means just kill any existing server communications subprocess."
;; process each line individually.
(while (string-match "\n" string)
(let ((request (substring string 0 (match-beginning 0)))
(coding-system (and default-enable-multibyte-characters
(or file-name-coding-system
default-file-name-coding-system)))
client nowait
(files nil)
(lineno 1))
@ -242,6 +249,9 @@ Prefix arg means just kill any existing server communications subprocess."
(setq arg (replace-match "-" t t arg)))
(t
(setq arg (replace-match " " t t arg))))))
;; Now decode the file name if necessary.
(if coding-system
(setq arg (decode-coding-string arg coding-system)))
(setq files
(cons (list arg lineno)
files))