git/reftable
Carlo Marcelo Arenas Belón e6b2582da3 reftable: avoid undefined behaviour breaking t0032
1214aa841b (reftable: add blocksource, an abstraction for random
access reads, 2021-10-07), makes the assumption that it is ok to
free a reftable_block pointing to NULL if the size is also set to
0, but implements that using a memset call that at least in glibc
based system will trigger a runtime exception if called with a
NULL pointer as its first parameter.

Avoid doing so by adding a conditional to check for the size in all
three identically looking functions that were affected, and therefore,
still allow memset to help catch callers that might incorrectly pass
a NULL pointer with a non zero size, but avoiding the exception for
the valid cases.

Signed-off-by: Carlo Marcelo Arenas Belón <carenas@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-04-15 09:24:02 -07:00
..
basics.c reftable: utility functions 2021-10-08 10:45:48 -07:00
basics.h reftable: utility functions 2021-10-08 10:45:48 -07:00
basics_test.c reftable: utility functions 2021-10-08 10:45:48 -07:00
block.c reftable: reading/writing blocks 2021-10-08 10:45:48 -07:00
block.h reftable: fix typo in header 2021-12-23 12:28:28 -08:00
block_test.c reftable: reading/writing blocks 2021-10-08 10:45:48 -07:00
blocksource.c reftable: avoid undefined behaviour breaking t0032 2022-04-15 09:24:02 -07:00
blocksource.h reftable: add blocksource, an abstraction for random access reads 2021-10-08 10:45:48 -07:00
constants.h reftable: (de)serialization for the polymorphic record type. 2021-10-08 10:45:48 -07:00
dump.c reftable: add dump utility 2021-10-08 10:45:48 -07:00
error.c reftable: signal overflow 2021-12-23 12:28:34 -08:00
generic.c reftable: generic interface to tables 2021-10-08 10:45:48 -07:00
generic.h reftable: generic interface to tables 2021-10-08 10:45:48 -07:00
iter.c reftable: read reftable files 2021-10-08 10:45:48 -07:00
iter.h reftable: read reftable files 2021-10-08 10:45:48 -07:00
LICENSE reftable: add LICENSE 2021-10-08 10:45:48 -07:00
merged.c reftable: add merged table view 2021-10-08 10:45:48 -07:00
merged.h reftable: add merged table view 2021-10-08 10:45:48 -07:00
merged_test.c reftable tests: avoid "int" overflow, use "uint64_t" 2022-01-13 13:39:09 -08:00
pq.c reftable: add a heap-based priority queue for reftable records 2021-10-08 10:45:48 -07:00
pq.h reftable: add a heap-based priority queue for reftable records 2021-10-08 10:45:48 -07:00
pq_test.c reftable: add a heap-based priority queue for reftable records 2021-10-08 10:45:48 -07:00
publicbasics.c reftable: utility functions 2021-10-08 10:45:48 -07:00
reader.c reftable: read reftable files 2021-10-08 10:45:48 -07:00
reader.h reftable: read reftable files 2021-10-08 10:45:48 -07:00
readwrite_test.c reftable: signal overflow 2021-12-23 12:28:34 -08:00
record.c reftable: (de)serialization for the polymorphic record type. 2021-10-08 10:45:48 -07:00
record.h reftable: (de)serialization for the polymorphic record type. 2021-10-08 10:45:48 -07:00
record_test.c reftable: (de)serialization for the polymorphic record type. 2021-10-08 10:45:48 -07:00
refname.c reftable: implement refname validation 2021-10-08 10:45:48 -07:00
refname.h reftable: implement refname validation 2021-10-08 10:45:48 -07:00
refname_test.c reftable: implement refname validation 2021-10-08 10:45:48 -07:00
reftable-blocksource.h reftable: add blocksource, an abstraction for random access reads 2021-10-08 10:45:48 -07:00
reftable-error.h reftable: signal overflow 2021-12-23 12:28:34 -08:00
reftable-generic.h reftable: generic interface to tables 2021-10-08 10:45:48 -07:00
reftable-iterator.h reftable: generic interface to tables 2021-10-08 10:45:48 -07:00
reftable-malloc.h reftable: utility functions 2021-10-08 10:45:48 -07:00
reftable-merged.h reftable: add merged table view 2021-10-08 10:45:48 -07:00
reftable-reader.h reftable: read reftable files 2021-10-08 10:45:48 -07:00
reftable-record.h reftable: (de)serialization for the polymorphic record type. 2021-10-08 10:45:48 -07:00
reftable-stack.h reftable: implement stack, a mutable database of reftable files. 2021-10-08 10:45:48 -07:00
reftable-tests.h reftable: add a heap-based priority queue for reftable records 2021-10-08 10:45:48 -07:00
reftable-writer.h reftable: support preset file mode for writing 2021-12-23 12:28:36 -08:00
reftable.c reftable: generic interface to tables 2021-10-08 10:45:48 -07:00
stack.c reftable: support preset file mode for writing 2021-12-23 12:28:36 -08:00
stack.h reftable: implement stack, a mutable database of reftable files. 2021-10-08 10:45:48 -07:00
stack_test.c reftable: support preset file mode for writing 2021-12-23 12:28:36 -08:00
system.h reftable: utility functions 2021-10-08 10:45:48 -07:00
test_framework.c reftable: utility functions 2021-10-08 10:45:48 -07:00
test_framework.h reftable: utility functions 2021-10-08 10:45:48 -07:00
tree.c reftable: a generic binary tree implementation 2021-10-08 10:45:48 -07:00
tree.h reftable: a generic binary tree implementation 2021-10-08 10:45:48 -07:00
tree_test.c reftable: a generic binary tree implementation 2021-10-08 10:45:48 -07:00
writer.c reftable: signal overflow 2021-12-23 12:28:34 -08:00
writer.h reftable: write reftable files 2021-10-08 10:45:48 -07:00