Re: [PATCH] strbuf: describe the return value of strbuf_read_file()
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jun 13, 2016, 22:10 UTC
- Message-ID
- <xmqqfusgbv0e.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <20160613202346.6473-1-pranit.bauva@gmail.com>
Pranit Bauva <pranit.bauva@gmail.com> writes:
Show 7 quoted lines
> Mentored-by: Lars Schneider <larsxschneider@gmail.com> > Mentored-by: Christian Couder <chriscool@tuxfamily.org> > Signed-off-by: Pranit Bauva <pranit.bauva@gmail.com> > --- > It is easy to be misguided on the return value of the function > strbuf_read_file(). It does follow the pattern of other standard functions > for reading files but its better to explicitly specify it.
Good thing to do; I wonder if we want to explicitly say -1 or leave it at "negative values are errors", though (my knee-jerk reaction being "do not over-specify more than absolute minimum to write callers correctly").
Show 16 quoted lines
> > strbuf.h | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/strbuf.h b/strbuf.h > index 7987405..4b487f7 100644 > --- a/strbuf.h > +++ b/strbuf.h > @@ -377,6 +377,8 @@ extern ssize_t strbuf_read_once(struct strbuf *, int fd, size_t hint); > /** > * Read the contents of a file, specified by its path. The third argument > * can be used to give a hint about the file size, to avoid reallocs. > + * Return the number of bytes read or -1 if some error occurred while > + * opening or reading the file. > */ > extern ssize_t strbuf_read_file(struct strbuf *sb, const char *path, size_t hint);