On Wed, May 20, 2015 at 10:55:34AM +0200, Fritjof Bornebusch wrote: > On Tue, May 19, 2015 at 08:57:06PM +0200, Fritjof Bornebusch wrote: > > Hi, > > > > xstrdup just wrappes strdup, so there is no need to call xmalloc and > > strlcpy instead. > > >
Ping ....
> Use err() instead of errx(), so errno will be printed additionally.
> Thanks to Tim.
>
> > Regards,
> > --F.
> >
> >
>
> Regards,
> --F.
>
> >
>
>
> Index: xmalloc.c
> ===================================================================
> RCS file: /cvs/src/usr.bin/rcs/xmalloc.c,v
> retrieving revision 1.8
> diff -u -p -r1.8 xmalloc.c
> --- xmalloc.c 26 Mar 2015 15:17:30 -0000 1.8
> +++ xmalloc.c 20 May 2015 08:53:01 -0000
> @@ -76,13 +76,11 @@ xfree(void *ptr)
> char *
> xstrdup(const char *str)
> {
> - size_t len;
> char *cp;
>
> - len = strlen(str) + 1;
> - cp = xmalloc(len);
> - if (strlcpy(cp, str, len) >= len)
> - errx(1, "xstrdup: string truncated");
> + if ((cp = strdup(str)) == NULL)
> + err(1, "xstrdup: copy string failed");
> +
> return cp;
> }
>
pgp1q6Ck8BKwd.pgp
Description: PGP signature
