Mercurial > emacs
changeset 83105:efc02a84dfbb
Fix frame parameter handling in server.el.
lisp/server.el (server-process-filter): Work around make-frame
frame parameter bogosity by using modify-frame-parameters.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-145
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Sun, 18 Apr 2004 02:24:18 +0000 |
parents | 625059157bad |
children | 8f4a3987f4a8 |
files | README.multi-tty lisp/server.el |
diffstat | 2 files changed, 15 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/README.multi-tty Sun Apr 18 01:40:02 2004 +0000 +++ b/README.multi-tty Sun Apr 18 02:24:18 2004 +0000 @@ -187,6 +187,17 @@ THINGS TO DO ------------ +** frame-creation-function was removed, which might be a bad idea. + Think up a compatible solution. + +** make-frame does not correctly handle extra parameters in its + argument: + + (frame-parameter (make-frame (list (cons 'foobar 42))) 'foobar) + => nil + + (This is likely an error in the CVS trunk.) + ** Fix set-input-mode for multi-tty. It's a truly horrible interface; what if we'd blow it up into several separate functions (with a compatibility definition)?
--- a/lisp/server.el Sun Apr 18 01:40:02 2004 +0000 +++ b/lisp/server.el Sun Apr 18 02:24:18 2004 +0000 @@ -468,8 +468,8 @@ (or display (frame-parameter nil 'display) (getenv "DISPLAY") - (error "Please specify display")) - (list (cons 'client proc)))) + (error "Please specify display")))) + (modify-frame-parameters frame (list (cons 'client proc))) (select-frame frame) (server-client-set client 'frame frame) (setq dontkill t)) @@ -501,7 +501,8 @@ (setq request (substring request (match-end 0))) (unless (server-client-get client 'version) (error "Protocol error; make sure you use the correct version of emacsclient")) - (setq frame (make-frame-on-tty tty type (list (cons 'client proc)))) + (setq frame (make-frame-on-tty tty type)) + (modify-frame-parameters frame (list (cons 'client proc))) (select-frame frame) (server-client-set client 'frame frame) (server-client-set client 'tty (frame-tty-name frame))