Re: [PATCH] config: avoid "write_in_full(fd, buf, len) != len" pattern
- From
Jeff King <peff@peff.net>
- Date
- Nov 17, 2017, 22:06 UTC
- Message-ID
- <20171117220633.6yoovfgpbr3rsykr@sigill.intra.peff.net>
- In-Reply-To
- <20171115124043.17147-1-phillip.wood@talktalk.net>
On Wed, Nov 15, 2017 at 12:40:43PM +0000, Phillip Wood wrote:
Show 7 quoted lines
> From: Phillip Wood <phillip.wood@dunelm.org.uk> > > As explained in commit 06f46f237 (avoid "write_in_full(fd, buf, len) > != len" pattern, 2017–09–13) the return value of write_in_full() is > either -1 or the requested number of bytes. As such comparing the > return value to an unsigned value such as strbuf.len will fail to > catch errors. Change the code to use the preferred '< 0' check.
Thanks for catching this. I wondered at first how I missed these obvious cases, but the answer is that they were added after my commit. :)
There's one more case in write_section() that uses "==". That's not actually wrong, but I wonder if we'd want to make it "< 0" for consistency.
-Peff