On Fri, May 02, 2008 at 05:53:40PM +0800, Herbert Xu wrote:
> On Fri, May 02, 2008 at 09:50:10AM +0200, Sam Ravnborg wrote:
> >
> > > @@ -251,8 +249,13 @@ inline
> > > STATIC char *
> > > getpwd()
> > > {
> > > +#ifdef _GNU_SOURCE
> > > char *dir = getcwd(0, 0);
> > > return dir ? dir : nullstr;
> > > +#else
> > > + char buf[PATH_MAX];
> > > + return getcwd(buf, sizeof(buf)) ? savestr(buf) : nullstr;
> > > +#endif
> > > }
> > If this patch is correct then we leak memory in the glic extension case.
> > According to man 3 getcwd the memory is allocated and thus should be freed.
>
> If we leaked memory in the glibc case then we'd also leak in the
> other one because savestr is dash's version of strdup. But we
> don't because the caller is responsible for freeing it.
OK, thanks for the explanation!
Sam
--
To unsubscribe from this list: send the line "unsubscribe dash" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
[LARTC]
[Bugtraq]
[Yosemite Forum]
[Photo]