changeset 84744:4f2e2dad61b9

(server-getenv-from): Remove. Use getenv-internal instead. (server-create-tty-frame): Don't set unused `tty' property. Set `display' instead of display-environment-variable. (server-create-window-system-frame): No display-environment-variable.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Fri, 21 Sep 2007 07:10:07 +0000
parents 21b080d14de6
children 0e4f63d9344d
files lisp/ChangeLog lisp/server.el
diffstat 2 files changed, 15 insertions(+), 25 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Fri Sep 21 07:09:48 2007 +0000
+++ b/lisp/ChangeLog	Fri Sep 21 07:10:07 2007 +0000
@@ -1,9 +1,16 @@
+2007-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* server.el (server-getenv-from): Remove.  Use getenv-internal instead.
+	(server-create-tty-frame): Don't set unused `tty' property.
+	Set `display' instead of display-environment-variable.
+	(server-create-window-system-frame): No display-environment-variable.
+
 2007-09-21  Michael Albinus  <michael.albinus@gmx.de>
 
 	* rfn-eshadow.el (rfn-eshadow-setup-minibuffer-hook)
 	(rfn-eshadow-update-overlay-hook): New defvars.
-	(rfn-eshadow-setup-minibuffer, rfn-eshadow-update-overlay): Run
-	the hooks.
+	(rfn-eshadow-setup-minibuffer, rfn-eshadow-update-overlay):
+	Run the hooks.
 
 	* net/tramp.el (tramp-rfn-eshadow-overlay): New defvar.
 	(tramp-rfn-eshadow-setup-minibuffer)
--- a/lisp/server.el	Fri Sep 21 07:09:48 2007 +0000
+++ b/lisp/server.el	Fri Sep 21 07:10:07 2007 +0000
@@ -213,22 +213,6 @@
 New clients have no properties."
   (add-to-list 'server-clients proc))
 
-(defun server-getenv-from (env variable)
-  "Get the value of VARIABLE in ENV.
-VARIABLE should be a string.  Value is nil if VARIABLE is
-undefined in ENV.  Otherwise, value is a string.
-
-ENV should be in the same format as `process-environment'."
-  (let (entry result)
-    (while (and env (null result))
-      (setq entry (car env)
-	    env (cdr env))
-      (if (and (> (length entry) (length variable))
-	       (eq ?= (aref entry (length variable)))
-	       (equal variable (substring entry 0 (length variable))))
-	  (setq result (substring entry (+ (length variable) 1)))))
-    result))
-
 (defmacro server-with-environment (env vars &rest body)
   "Evaluate BODY with environment variables VARS set to those in ENV.
 The environment variables are then restored to their previous values.
@@ -240,7 +224,7 @@
 	(value (make-symbol "value")))
     `(let ((process-environment process-environment))
        (dolist (,var ,vars)
-	 (let ((,value (server-getenv-from ,env ,var)))
+         (let ((,value (getenv-internal ,var ,env)))
            (push (if (null ,value)
                      ,var
                    (concat ,var "=" ,value))
@@ -585,11 +569,12 @@
                               `((client . ,proc)
                                 (environment . ,(process-get proc 'env)))))))
   
-    (set-frame-parameter frame 'display-environment-variable
-                         (server-getenv-from (process-get proc 'env) "DISPLAY"))
+    ;; ttys don't use the `display' parameter, but callproc.c does to set
+    ;; the DISPLAY environment on subprocesses.
+    (set-frame-parameter frame 'display
+                         (getenv-internal "DISPLAY" (process-get proc 'env)))
     (select-frame frame)
     (process-put proc 'frame frame)
-    (process-put proc 'tty (terminal-name frame))
     (process-put proc 'terminal (frame-terminal frame))
 
     ;; Display *scratch* by default.
@@ -601,7 +586,7 @@
     frame))
 
 (defun server-create-window-system-frame (display nowait proc)
-  (if (not (fboundp 'x-create-frame))
+  (if (not (fboundp 'make-frame-on-display))
       (progn
         ;; This emacs does not support X.
         (server-log "Window system unsupported" proc)
@@ -626,8 +611,6 @@
       ;; initialization parameters for X frames at
       ;; the moment.
       (modify-frame-parameters frame params)
-      (set-frame-parameter frame 'display-environment-variable 
-                           (server-getenv-from (process-get proc 'env) "DISPLAY"))
       (select-frame frame)
       (process-put proc 'frame frame)
       (process-put proc 'terminal (frame-terminal frame))