From: Johannes Schindelin Date: Tue, 14 Jul 2026 22:48:37 +0000 (+0000) Subject: reftable tests: check reftable_table_init_ref_iterator() return X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2f562922119ffb9d147c921967cc0ee12b846b82;p=thirdparty%2Fgit.git reftable tests: check reftable_table_init_ref_iterator() return test_reftable_table__seek_once() and test_reftable_table__reseek() both call reftable_table_init_ref_iterator() without checking its return value. This function returns an int error code (0 on success, negative on failure). Every other reftable function call in these same tests checks the return via cl_assert_equal_i() or cl_assert(), making this omission inconsistent. If the iterator initialization ever fails (e.g., due to a memory allocation failure in the reftable internals), the test would proceed to seek and read with an uninitialized iterator, producing misleading test results or crashes rather than a clear assertion failure. Check the return value via cl_assert_equal_i(ret, 0), consistent with the surrounding code. Pointed out by Coverity. Assisted-by: Claude Opus 4.6 Signed-off-by: Johannes Schindelin Signed-off-by: Junio C Hamano --- diff --git a/t/unit-tests/u-reftable-table.c b/t/unit-tests/u-reftable-table.c index fae478ee04..6f444f8cf9 100644 --- a/t/unit-tests/u-reftable-table.c +++ b/t/unit-tests/u-reftable-table.c @@ -29,7 +29,8 @@ void test_reftable_table__seek_once(void) ret = reftable_table_new(&table, &source, "name"); cl_assert(!ret); - reftable_table_init_ref_iterator(table, &it); + ret = reftable_table_init_ref_iterator(table, &it); + cl_assert_equal_i(ret, 0); ret = reftable_iterator_seek_ref(&it, ""); cl_assert(!ret); ret = reftable_iterator_next_ref(&it, &ref); @@ -71,7 +72,8 @@ void test_reftable_table__reseek(void) ret = reftable_table_new(&table, &source, "name"); cl_assert(!ret); - reftable_table_init_ref_iterator(table, &it); + ret = reftable_table_init_ref_iterator(table, &it); + cl_assert_equal_i(ret, 0); for (size_t i = 0; i < 5; i++) { ret = reftable_iterator_seek_ref(&it, "");