Date: Mon, 21 May 2012 12:29:19 -0700 From: Xin Li <delphij@delphij.net> To: Guy Helmer <ghelmer@palisadesys.com> Cc: freebsd-hackers@freebsd.org, d@delphij.net Subject: Re: Review of changes for getnetgrent.c Message-ID: <4FBA978F.2030908@delphij.net> In-Reply-To: <AE6E3D09-1413-4B5E-8A79-1145179F8D62@palisadesys.com> References: <4EE466CC-5F93-485C-8E1F-907F8049FD61@palisadesys.com> <4FB6D698.9030305@delphij.net> <AE6E3D09-1413-4B5E-8A79-1145179F8D62@palisadesys.com>
next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 On 05/21/12 12:02, Guy Helmer wrote: > > On May 18, 2012, at 6:09 PM, Xin Li wrote: > >> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 >> >> On 05/18/12 14:58, Guy Helmer wrote: >>> To close PR bin/83340, I have this change worked up to resolve >>> memory allocation failure handling and avoid creating bad >>> entries in the grp list due to memory allocation failures while >>> building a new entry. >>> >>> Before committing, I wanted to run it past others to see if >>> there were any problems with it. >> >> %%% @@ -477,6 +475,13 @@ if (len > 0) { grp->ng_str[strpos] = >> (char *) malloc(len + 1); + if (grp->ng_str[strpos] == NULL) >> { + for (freepos = 0; freepos < strpos; freepos++) + >> if (grp->ng_str[freepos] != NULL) + >> free(grp->ng_str[freepos]); + free(grp); + >> return(1); + } bcopy(spos, grp->ng_str[strpos], len + 1); >> %%% > > Like this? > > if (len > 0) { grp->ng_str[strpos] = (char *) malloc(len + 1); + > if (grp->ng_str[strpos] == NULL) { + int freepos; + for > (freepos = 0; freepos < strpos; freepos++) + > free(grp->ng_str[freepos]); + free(grp); + return(1); + > } bcopy(spos, grp->ng_str[strpos], len + 1); } >> >> There are a few return without space between the keyword and >> return value. > > Do you recommend I fix all those instances in the file, or just the > instances in this patch? I'd recommend fixing them all (note that you could run into a bigger commit as the switch() is not style(9) conformant at this time) and we normally do it in two different commits (one style, and another functional) when possible. Cheers, - -- Xin LI <delphij@delphij.net> https://www.delphij.net/ FreeBSD - The Power to Serve! Live free or die -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iQEcBAEBCAAGBQJPupePAAoJEG80Jeu8UPuz52wH/RVJXpCyea+ep08XDx82D7tG us+ujKa1aNOUumzwJRsJ4SNVBiyc+hqCtb8s7FjjeF4/SJk8oei/I1/M1JIyMuIh FawSB8rNJCbn/u9Od19iOeh/f/IDeCN+q8OrUK5mqQ7G1KDcHs12h86AFlm9HA7K 8UyxneTkPfKhED6hkgSll6bqYAJLeR5jJ3CCGvBeXxNgzJyyAhICWv0UgzUpcY9d l2beuIXc57toDaLrbWkooLfQclDWPWyyPXq7okexQAq8OUjqmQFE+EhcYsIbtBkH uBW67jhH81MZf/Ryl83VeqT9IChOySAU0YiwOQxaxdlqR53VAenAY0sWS1QvuX8= =drgy -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4FBA978F.2030908>