[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [E-devel] New patch for entranced and entrance



On Tue, 29 Aug 2006 06:12:47 +0200 Sebastian Dransfeld <sebastid@stud.ntnu.no>
babbled:

> Carsten Haitzler (The Rasterman) wrote:
> > On Mon, 28 Aug 2006 16:55:19 +0200 Sebastian Dransfeld
> > <sebastid@stud.ntnu.no> babbled:
> > 
> >> Eugen Minciu wrote:
> >>> On Mon, 28 Aug 2006 14:29:08 +0100
> >>> Essien Ita Essien <essien@wazobialinux.com> wrote:
> >>>
> >>> Well .. then maybe we shouldn't clearenv() in the first place? We may not
> >>> need to, since setenv(x,y,1) is called, which overwrites the var's
> >>> contents anyway. I didn't want to try it before because I suspected
> >>> clearenv() was there for good reasons (and it feels right, too).
> >>>
> >>> However, it's strange you should mention this .. there is:
> >>> entrance_auth_setup_environment(Entrance_Auth * e, const char *display,
> >>> const char *path) so the display is sent as a paramter and it _should be_
> >>> set by the function itself.
> >>>
> >>> Could you investigate this a bit further? I'm willing to try not clearenv
> >>> ()
> >>> - ing but it may introduce some even subtler (and weirder) problems. If
> >>> you think it shouldn't though I'll try it out later on tonight, when I've
> >>> some free time on my hands.
> >> clearenv must stay. The user must not inherit any environment from
> >> entrance.
> > 
> > well- it does NEED to inherit DISPLAY... for starters. :) the problem is
> > actually entrance executing enlightenment directly. no other dm does this as
> > best i know. every login session is first executed by a shell which then
> > executes the wm or session manager etc. thus the behavior issues. wm's like
> > e expect to have a users environment already loaded by the time they run.
> > (ie users $PATH is set and all the other goodies a user wants in their
> > SHELL)
> 
> DISPLAY is set by entrance for the user, so I would not call it inherit 
> from entrance. clearenv first, then set user environment (DISPLAY++), 
> then launch user session in a login shell.

well the only way to set an env var in  child process is to set it before the
process runs (either in the parent env or explicitly in the exec) :)but e
doesnt magically set it itself :)

-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    raster@rasterman.com
裸好多
Tokyo, Japan (東京 日本)