Yes, it's the lists. Nothing will cope with \0 in a C string, so it's a
good choice as list of string element separator.

On 18 January 2017 at 19:21, Fran. J Ballesteros <n...@lsub.org> wrote:

> rc lists?
>
> > El 18 ene 2017, a las 17:45, Giacomo Tesio <giac...@tesio.it> escribió:
> >
> > Hi, last night I noticed this strange post processing in 4th edition's
> > getenv: https://github.com/brho/plan9/blob/master/sys/src/libc/9sys/
> getenv.c#L34-L41
> >
> >        seek(f, 0, 0);
> >        r = read(f, ans, s);
> >        if(r >= 0) {
> >            ep = ans + s - 1;
> >            for(p = ans; p < ep; p++)
> >                if(*p == '\0')
> >                    *p = ' ';
> >            ans[s] = '\0';
> >        }
> >
> > Anybody know why this replacement is done?
> > It does not seem a good fix to read/write or read/truncate races, but
> > I can't find a better explanation.
> >
> >
> > Giacomo
> >
>
>
>

Reply via email to