diff options
Diffstat (limited to 'lisp/server.el')
| -rw-r--r-- | lisp/server.el | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/lisp/server.el b/lisp/server.el index fb587b640a3..f98be109c92 100644 --- a/lisp/server.el +++ b/lisp/server.el | |||
| @@ -620,8 +620,8 @@ The following commands are accepted by the client: | |||
| 620 | ;; emacsclient quits while also preventing | 620 | ;; emacsclient quits while also preventing |
| 621 | ;; `server-save-buffers-kill-display' from unexpectedly | 621 | ;; `server-save-buffers-kill-display' from unexpectedly |
| 622 | ;; killing emacs on that frame. | 622 | ;; killing emacs on that frame. |
| 623 | (list (cons 'client 'nowait)) | 623 | (list (cons 'client 'nowait) (cons 'environment env)) |
| 624 | (list (cons 'client proc))))) | 624 | (list (cons 'client proc) (cons 'environment env))))) |
| 625 | (setq frame (make-frame-on-display | 625 | (setq frame (make-frame-on-display |
| 626 | (or display | 626 | (or display |
| 627 | (frame-parameter nil 'display) | 627 | (frame-parameter nil 'display) |
| @@ -637,7 +637,6 @@ The following commands are accepted by the client: | |||
| 637 | (select-frame frame) | 637 | (select-frame frame) |
| 638 | (server-client-set client 'frame frame) | 638 | (server-client-set client 'frame frame) |
| 639 | (server-client-set client 'device (frame-display frame)) | 639 | (server-client-set client 'device (frame-display frame)) |
| 640 | (set-terminal-parameter frame 'environment env) | ||
| 641 | (setq dontkill t)) | 640 | (setq dontkill t)) |
| 642 | ;; This emacs does not support X. | 641 | ;; This emacs does not support X. |
| 643 | (server-log "Window system unsupported" proc) | 642 | (server-log "Window system unsupported" proc) |
| @@ -684,12 +683,12 @@ The following commands are accepted by the client: | |||
| 684 | (setq frame (make-frame-on-tty tty type | 683 | (setq frame (make-frame-on-tty tty type |
| 685 | ;; Ignore nowait here; we always need to clean | 684 | ;; Ignore nowait here; we always need to clean |
| 686 | ;; up opened ttys when the client dies. | 685 | ;; up opened ttys when the client dies. |
| 687 | `((client . ,proc))))) | 686 | `((client . ,proc) |
| 687 | (environment . ,env))))) | ||
| 688 | (select-frame frame) | 688 | (select-frame frame) |
| 689 | (server-client-set client 'frame frame) | 689 | (server-client-set client 'frame frame) |
| 690 | (server-client-set client 'tty (display-name frame)) | 690 | (server-client-set client 'tty (display-name frame)) |
| 691 | (server-client-set client 'device (frame-display frame)) | 691 | (server-client-set client 'device (frame-display frame)) |
| 692 | (set-terminal-parameter frame 'environment env) | ||
| 693 | 692 | ||
| 694 | ;; Reply with our pid. | 693 | ;; Reply with our pid. |
| 695 | (server-send-string proc (concat "-emacs-pid " (number-to-string (emacs-pid)) "\n")) | 694 | (server-send-string proc (concat "-emacs-pid " (number-to-string (emacs-pid)) "\n")) |
| @@ -740,8 +739,7 @@ The following commands are accepted by the client: | |||
| 740 | ;; -env NAME=VALUE: An environment variable. | 739 | ;; -env NAME=VALUE: An environment variable. |
| 741 | ((and (equal "-env" arg) (string-match "\\([^ ]+\\) " request)) | 740 | ((and (equal "-env" arg) (string-match "\\([^ ]+\\) " request)) |
| 742 | (let ((var (server-unquote-arg (match-string 1 request)))) | 741 | (let ((var (server-unquote-arg (match-string 1 request)))) |
| 743 | (when coding-system | 742 | ;; XXX Variables should be encoded as in getenv/setenv. |
| 744 | (setq var (decode-coding-string var coding-system))) | ||
| 745 | (setq request (substring request (match-end 0))) | 743 | (setq request (substring request (match-end 0))) |
| 746 | (setq env (cons var env)))) | 744 | (setq env (cons var env)))) |
| 747 | 745 | ||