[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 23.0.50; DISPLAY env var bug on w32?
From: |
Lennart Borgman (gmail) |
Subject: |
Re: 23.0.50; DISPLAY env var bug on w32? |
Date: |
Mon, 07 Jan 2008 22:32:06 +0100 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071031 Thunderbird/2.0.0.9 Mnenhy/0.7.5.666 |
Eli Zaretskii wrote:
Date: Mon, 07 Jan 2008 19:45:42 +0100
From: "Lennart Borgman (gmail)" <address@hidden>
Cc:
PS: I do not know if DISPLAY is normally set on a w32 system
It isn't. DISPLAY is standard on X, but not on other windowing
systems.
Thanks, Eli, I suspected that is why this/these bugs have not been
discovered before.
I got some problems sending to Emacs bugs earlier today so I am
resending what I tried to send then. (I sent it to devel but it seems
better to have it all here.) In this message I looked through the code
to try to understand what happens on w32.
-------- Original Message --------
Subject: Mail delivery failed: returning message to sender
Date: Mon, 07 Jan 2008 15:23:02 -0500
From: Mail Delivery System <address@hidden>
A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:
address@hidden
SMTP error from remote mail server after RCPT
TO:<address@hidden>:
host fencepost.gnu.org [140.186.70.10]: 550 unknown user
============================
Lennart Borgman (gmail) wrote:
> I can not use emacsclient to open files unless I delete the
environmental variable DISPLAY.
>
> To reproduce the problem do
>
> emacs -Q
> M-x server-mode
>
> Then from the command line try to open a file, for example
>
> emacsclient.exe COPYING
>
> This fails with the message
>
> C:\emacs\u\080104\emacs\bin>emacsclient.exe COPYING
> Waiting for Emacs...
> *ERROR*: Don't know how to create a frame on window system x
It looks like several possible bugs to me. A call from emacsclient leads to
server-process-filter
and since tty-name is nil this calls
server-select-display
In this function there is a check
(equal (frame-parameter (selected-frame) 'display) display))
This fails since (frame-parameter (selected-frame) 'display) returns "".
I would expect it to return "localhost:0.0" in my case. The reason for
this is explained further below.
Now this leads to a call to
make-frame-on-display
which finishes with a line at the bottom saying
(make-frame `((window-system . x) (display . ,display) .
,parameters)))
The correct window-system seems to be 'w32 in my case, since that is
what works inf make-frame. The variable frame-creation-function-alist
used there is
((w32 . x-create-frame-with-faces)
(nil . tty-create-frame-with-faces))
If I use this then the frame actually get the display property
"localhost:0.0" and that is why I believe that this is what it should
have from the beginning. So this is bug 1 here I believe.
But 2 is the hard coded value in the last line of make-frame-on-display.
It looks like window-system should be something different there.
When I try to find out what I see in server-process-filter some lines saying
;; -window-system: Open a new X frame.
((equal "-window-system" arg)
(setq dontkill t)
(setq tty-name 'window-system))
Those are a bit surprising to me since I expect an analogous use of
something called "window-system" throughout the code. Obviously that is
not the case here.
And here I stop speculating because there might be some mistake in the
structure here. Someone who understands this code better than I do can
perhaps see more clearly what is needed.
- Re: 23.0.50; DISPLAY env var bug on w32?, (continued)
- Re: 23.0.50; DISPLAY env var bug on w32?, Stefan Monnier, 2008/01/14
- Re: 23.0.50; DISPLAY env var bug on w32?, Jason Rumney, 2008/01/14
- Re: 23.0.50; DISPLAY env var bug on w32?, Eli Zaretskii, 2008/01/14
- Re: 23.0.50; DISPLAY env var bug on w32?, Jason Rumney, 2008/01/14
- Re: 23.0.50; DISPLAY env var bug on w32?, Eli Zaretskii, 2008/01/14
- Re: 23.0.50; DISPLAY env var bug on w32?, Jason Rumney, 2008/01/15
- Re: 23.0.50; DISPLAY env var bug on w32?, Eli Zaretskii, 2008/01/12
Re: 23.0.50; DISPLAY env var bug on w32?, Robert J. Chassell, 2008/01/07
Re: 23.0.50; DISPLAY env var bug on w32?, Eli Zaretskii, 2008/01/07
- Re: 23.0.50; DISPLAY env var bug on w32?,
Lennart Borgman (gmail) <=