svn commit: r292410 - head/usr.sbin/boot0cfg

John Baldwin jhb at freebsd.org
Fri Dec 18 19:50:11 UTC 2015


On Friday, December 18, 2015 02:17:16 PM Marcelo Araujo wrote:
> 2015-12-18 13:53 GMT+08:00 Garrett Cooper <yaneurabeya at gmail.com>:
> 
> >
> > > On Dec 17, 2015, at 21:36, luke <luke.tw at gmail.com> wrote:
> > >
> > >> On Fri, Dec 18, 2015 at 4:42 AM, John Baldwin <jhb at freebsd.org> wrote:
> > >> Author: jhb
> > >> Date: Thu Dec 17 20:42:05 2015
> > >> New Revision: 292410
> > >> URL: https://svnweb.freebsd.org/changeset/base/292410
> > >>
> > >> Log:
> > >>   Exit cleanly if malloc() fails to allocate a buffer for a copy of the
> > >>   current MBR.
> > >>
> > >>   PR:           205322
> > >>   Submitted by: Alexander Kuleshov <kuleshovmail at gmail.com>
> > >>   MFC after:    1 week
> > >>
> > >> Modified:
> > >>   head/usr.sbin/boot0cfg/boot0cfg.c
> > >>
> > >> Modified: head/usr.sbin/boot0cfg/boot0cfg.c
> > >>
> > ==============================================================================
> > >> --- head/usr.sbin/boot0cfg/boot0cfg.c   Thu Dec 17 20:33:20 2015
> > (r292409)
> > >> +++ head/usr.sbin/boot0cfg/boot0cfg.c   Thu Dec 17 20:42:05 2015
> > (r292410)
> > >> @@ -337,6 +337,8 @@ read_mbr(const char *disk, u_int8_t **mb
> > >>         return (mbr_size);
> > >>      }
> > >>      *mbr = malloc(sizeof(buf));
> > >> +    if (mbr == NULL)
> > >> +       errx(1, "%s: unable to allocate MBR buffer", disk);
> > >>      memcpy(*mbr, buf, sizeof(buf));
> > >>      close(fd);
> >
> >
> > > Hi,
> > >
> > > Should the check be against *mbr  ?
> > > +    if (*mbr == NULL)
> > > +       errx(1, "%s: unable to allocate MBR buffer", disk);
> >
> > Yup!
> >
> 
> +1
> 
> Could be write as:
> if ((*mbr = malloc(sizeof(buf))) == NULL)
>      errx(1, "%s: unable to allocate MBR buffer", disk);

Yes, but I don't like side effects in conditionals.

OTOH, changing away from that is how I fubar'd the original patch. :-/

-- 
John Baldwin


More information about the svn-src-all mailing list