Issue with _dbus_write_socket on windows
hp at redhat.com
Fri Nov 17 09:19:58 PST 2006
Christian Ehrlicher wrote:
> Because we implemented the _dbus_get_autolaunch_address() like unix does
> - calling dbus-daemon and get back ip:port by printing to stdout. What's
> wrong here?
I don't know exactly, since I don't know how this works on Windows. What
is the "fd" you pass to the daemon's --print-addr-fd function? Is it a
pipe or a socket or what is it? On UNIX autolaunch does a fork/exec,
what does it do on Windows?
A larger question is why do we need autolaunch on Windows - autolaunch
is used in two cases on UNIX, 1) ssh to a remote machine and displaying
an X app on the local machine 2) logging in as another user and
displaying an X app on this user's display. I don't know that either
thing really comes up in the Windows case.
How does the bus get found in the session normally? There are lots of
single-instance apps in Windows, we should be single-instance probably
using a similar mechanism. The DBUS_SESSION_BUS_ADDRESS env variable
doesn't seem very good on Windows since we have no way to arrange for it
to be set for every process in the session afaik, and it would require
logout in any case.
Again, don't emulate UNIX. Do what makes sense on Windows natively...
the command line options, config files, bus addresses, etc. can be
different on Windows when the UNIX versions don't make sense.
More information about the dbus