Re: bonobo activation environment matching and DISPLAY
- From: "Gustavo J. A. M. Carneiro" <gjc inescporto pt>
- To: Bill Haneman Sun COM, Michael Meeks <michael ximian com>
- Cc: "desktop-devel-list gnome org" <desktop-devel-list gnome org>, Alexander Larsson <alexl redhat com>, Padraig Obriain Sun COM
- Subject: Re: bonobo activation environment matching and DISPLAY
- Date: Mon, 23 Aug 2004 17:22:32 +0100
A Seg, 2004-08-23 às 16:35, Bill Haneman escreveu:
> On Fri, 2004-08-20 at 22:15, Gustavo J. A. M. Carneiro wrote:
> > ...> > We're wondering what the best fix is - should we just special case the
> > > > matching of DISPLAY in bonobo-activation, rather than trying to enforce
> > > > consistent values of DISPLAY among desktop processes? Or should we call
> > > > gdk_get_display and re-normalize the environment of the client before
> > > > doing a bonobo-activation query?
> > >
> > >
> > > Nautilus does this early in main(), before registering to b-a to
> > > canonicalize the DISPLAY env var:
> > >
> > > /* Need to set this to the canonical DISPLAY value, since
> > > thats where we're registering per-display components */
> > > bonobo_activation_set_activation_env_value ("DISPLAY",
> > > gdk_display_get_name (gdk_display_get_default()));
> > This is for the old "bonobo activation environment" API, which works
> > with an artificial environment. The new bonobo:environment property of
> > <oaf_server> matches against the real unix process environment.
> > Therefore, to achieve the same effect with this method one one have to
> > do the same as in nautilus, but replacing
> > bonobo_activation_set_activation_env_value with setenv (or g_setenv).
> Is this the right thing to do? It seems to me that since we are mucking
> about with the env, it would be safer to use the
> set_activation_env_value rather than actually do a setenv() in the
> What we ended up doing in at-spi is using a new bonobo-activation
> environment variable, which we call AT_SPI_DISPLAY, and create from
> DISPLAY at runtime in both the server and in querying clients. In this
> way we can control the correlation between DISPLAY and at-spi-registry
> more effectively. For instance, in the course of discussing this
> internally we concluded that indeed we wanted one at-spi-registryd per
> x-server (but not per-screen), at least in most scenarios, therefore we
> needed to strip the screen number off of DISPLAY in some cases anyway.
> I assume that your note above about the bonobo:environment property
> doesn't mean that the "artificial environment", i.e. the constructed
> req_env, is deprecated... let me know if I've missed something.
Yes, I think it is deprecated, but I defer to Michael on this one.
Michael, what's your opinion on this?
Gustavo João Alves Marques Carneiro
<gjc inescporto pt> <gustavo users sourceforge net>
The universe is always one step beyond logic.
] [Thread Prev