Re: getenv() can't differentiate "defined but empty" and "undefined"

About this list Date view Thread view Subject view Author view Other groups

Subject: Re: getenv() can't differentiate "defined but empty" and "undefined"
From: Prof Brian D Ripley (ripley@stats.ox.ac.uk)
Date: Thu 30 Sep 1999 - 00:52:35 EST


Message-ID: <Pine.GSO.4.05.9909291546210.13114-100000@auk.stats>

On Wed, 29 Sep 1999, Martin Maechler wrote:

> getenv(<varname>) currently returns ""
> if the <varname> is undefined.
>
> However, if <varname> is defined but empty,
> getenv(<varname>) still only returns "".
>
> I think this is quite unfortunate
> but consistent with the prototype.
>
> ---
> I'd propose to change the current behavior.
> Something which should be pretty back compatible would
> for the first case (undefined environment variable)
> to return "" with an attribute "defined" set to FALSE
> i.e. return(structure("", defined = FALSE))
>
> Does anyone see a problem with this approach ?

I think it should really be NULL if undefined: attributes which may or may
not be there are a nuisance. The only problem I can see is in
system.gnw.r, whihc doe use nchar on getenv.

Small point: when do you want to change this? It is platform-specific code.

-- 
Brian D. Ripley,                  ripley@stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272860 (secr)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._


About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b25 : Tue 04 Jan 2000 - 14:16:08 EST