]> git.ipfire.org Git - thirdparty/git.git/commit
reftable/blocksource: adjust `read_block()` to return `ssize_t`
authorPatrick Steinhardt <ps@pks.im>
Mon, 20 Jan 2025 16:17:27 +0000 (17:17 +0100)
committerJunio C Hamano <gitster@pobox.com>
Tue, 21 Jan 2025 22:20:30 +0000 (14:20 -0800)
commit7c4c1cbc0b94665d6a94ac7df385459346af5265
tree1e88e9cd8a012dbb61387baaf62a983edefc06ed
parent1f054af72f509f1247687b91a360961b5d930869
reftable/blocksource: adjust `read_block()` to return `ssize_t`

The `block_source_read_block()` function and its implementations return
an integer as a result that reflects either the number of bytes read, or
an error. As such its return type, a signed integer, isn't wrong, but it
doesn't give the reader a good hint what it actually returns.

Refactor the function to return an `ssize_t` instead, which is typical
for functions similar to read(3p) and should thus give readers a better
signal what they can expect as a result.

Adjust callers to better handle the returned value to avoid warnings
with -Wsign-compare. One of these callers is `reader_get_block()`, whose
return value is only ever used by its callers to figure out whether or
not the read was successful. So instead of bubbling up the `ssize_t`
there, too, we adapt it to only indicate success or errors.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
reftable/blocksource.c
reftable/reader.c
reftable/reader.h
reftable/reftable-blocksource.h