[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- To: "Sean C. Farley" <scf_(_at_)_FreeBSD_(_dot_)_org>, Robert Watson <rwatson_(_at_)_FreeBSD_(_dot_)_org>, freebsd-current <freebsd-current_(_at_)_FreeBSD_(_dot_)_org>, Michal Mertl <mime_(_at_)_traveller_(_dot_)_cz>
- Subject: Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- From: Andrey Chernov <ache_(_at_)_nagual_(_dot_)_pp_(_dot_)_ru>
- Date: Sat, 7 Jul 2007 17:13:59 +0400
- Cc:
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nagual.pp.ru; s=default; t=1183814040; bh=hH/FlltudC+goDHEaYrLGc5gTykAvhCEdyLPulz uDNw=; l=853; h=Received:Date:From:To:Subject:Message-ID: Mail-Followup-To:References:MIME-Version:Content-Type: Content-Disposition:In-Reply-To:User-Agent; b=jO17F9jlh0A/kHD86g37 ExLVCwg35d6b8P/2DdLP4nnuWSYCccb9gJbg4xi/WL4V2KusOQ4+L2DJWeVHqolotWg qquf7UzyCevW8Akn/jrRJyVv2kFYzmRiT/rgXS1A7SBUQvfLl0Ej+K6j90E6Ib4C5dN 5RnwAMD5dtBfzNxWE=
- Mail-followup-to: Andrey Chernov <ache_(_at_)_nagual_(_dot_)_pp_(_dot_)_ru>, "Sean C. Farley" <scf_(_at_)_FreeBSD_(_dot_)_org>, Robert Watson <rwatson_(_at_)_FreeBSD_(_dot_)_org>, freebsd-current <freebsd-current_(_at_)_FreeBSD_(_dot_)_org>, Michal Mertl <mime_(_at_)_traveller_(_dot_)_cz>
On Sat, Jul 07, 2007 at 05:09:00PM +0400, Andrey Chernov wrote:
> Well, I see. You try to keep envVars[] between environ switch by that way.
>
> But it still look complicated and probably gains nothing. I.e. will be
> much _faster_ just free envVars[] (but not variables themselfs) and allow
> build_env() to calloc() new array for envVars and fills it from new
> environ. It is surely faster than calling setenv() for each variable just
> for sake of keepeng once allocated envVars[].
>
> Moreover, environ switch commonly used to switch from large environ to
> smaller one (or to empty one), so the rest of old envVars[] array would
> keep unneccessary allocation.
BTW, if you just free(envVars) when environ switch is detected, there is
no needs to __remove_putenv() (big slowdown) in the __clean_env() too.
--
http://ache.pp.ru/
_______________________________________________
freebsd-current_(_at_)_freebsd_(_dot_)_org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe_(_at_)_freebsd_(_dot_)_org"
- References:
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
- Re: Environment handling broken in /bin/sh with changes to {get,set,put}env()
Visit your host, monkey.org