Store local environment in frame (not terminal) parameters.
authorKaroly Lorentey <lorentey@elte.hu>
Thu, 29 Dec 2005 04:31:04 +0000 (04:31 +0000)
committerKaroly Lorentey <lorentey@elte.hu>
Thu, 29 Dec 2005 04:31:04 +0000 (04:31 +0000)
commitda8e8fc14f3166ec596e34f43fbfea866d1176df
tree9c31affcb4b837cac4793f10acbafc562bfd08e4
parent86f5ca04d94ad551d3aa726e15281e75ef0189ed
Store local environment in frame (not terminal) parameters.

* src/callproc.c (child_setup, getenv_internal, Fgetenv_internal):
  Store the local environment in a frame (not terminal) parameter.
  Update doc strings.
  (syms_of_callproc): Update doc strings.
  (Qenvironment): Moved to frame.c.

* lisp/env.el (read-envvar-name, setenv, getenv, environment): Use frame
  parameters to store the local environment, not terminal parameters.

* server.el (server-process-filter): Store the local environment in a
  frame (not terminal) parameter.  Do not try to decode environment
  strings.

* lisp/frame.el (make-frame): Set up the 'environment frame parameter,
  when needed.

* src/frame.c (Qenvironment): Move here from callproc.c.
  (Fdelete_frame): Don't allow other frames to refer to a deleted frame
  in their 'environment parameter.
  (Fframe_with_environment): New function.
  (syms_of_frame): Defsubr it.  Initialize and staticpro Qenvironment.

* frame.h (Qenvironment): Declare.
* lisp.h (Fframe_with_environment): EXFUN it.

git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-467
README.multi-tty
lisp/env.el
lisp/frame.el
lisp/server.el
src/callproc.c
src/frame.c
src/frame.h
src/lisp.h