Re: [PATCH] config: avoid "write_in_full(fd, buf, len) != len" pattern
- From
- Phillip Wood <phillip.wood@talktalk.net>
- Date
- Nov 18, 2017, 11:27 UTC
- Message-ID
- <6f1cf9ac-42e4-76b2-6936-4646a5cb574c@talktalk.net>
- In-Reply-To
- <20171117220633.6yoovfgpbr3rsykr@sigill.intra.peff.net>
On 17/11/17 22:06, Jeff King wrote:
Show 16 quoted lines
> On Wed, Nov 15, 2017 at 12:40:43PM +0000, Phillip Wood wrote: > >> 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.
Yes, I noticed that but didn't get round to looking at it properly the other day. Rene's fix looks good to me.
Best Wishes
Phillip