aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/server.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/server.el')
-rw-r--r--lisp/server.el12
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