On 01/10/2007, Adam Jackson <ajackson(a)redhat.com> wrote:
Okay, I think I have a fix for this.
The bug is that the ICE sockets are bound at session startup by
gnome-session (or whatever), and the path to them is stashed in
$SESSION_MANAGER in the environment as a tuple of (transport, hostname,
port). But the hostname in that tuple is whatever you got back from
gethostname(). NetworkManager won't change the system hostname when
changing DHCP leases, but dhclient will, and more generally we can't
rely on the user to not set the hostname to whatever they want.
Aha!
Yes, that would do it.
Fortunately, there's a special case in the xtrans code that
treats the
hostname "unix" as meaning "no, really, local machine", so for
AF_UNIX
transports we just lie and set the "hostname" in the above tuple to be
"unix" and avoid that whole mess.
That makes sense.
Fixed in xorg-x11-xtrans-devel 1.0.3-5 and libICE 1.0.4-2 (currently
building). Anyone who was seeing X app launch stalling or failing after
changing networks/IPs/hostnames/whatever, please update libICE and see
if you can still repro it.
Any chance of an F7 update for that? I can't really justify pushing
rawhide (or test3) onto my workstation here ...
- ajax