1
0
mirror of https://github.com/facebook/zstd.git synced 2025-07-29 11:21:22 +03:00

updated fuzz tests to use FileNamesTable* abstraction

This commit is contained in:
Yann Collet
2019-11-06 14:42:13 -08:00
parent 31a0abbfda
commit a7e33e3e10
5 changed files with 46 additions and 52 deletions

View File

@ -173,21 +173,10 @@ void data_buffer_free(data_buffer_t buffer) {
* data filenames helpers.
*/
data_filenames_t data_filenames_get(data_t const* data) {
data_filenames_t filenames = {.buffer = NULL, .size = 0};
char const* path = data->data.path;
filenames.filenames = UTIL_createFileList(
&path,
1,
&filenames.buffer,
&filenames.size,
/* followLinks */ 0);
return filenames;
}
void data_filenames_free(data_filenames_t filenames) {
UTIL_freeFileList(filenames.filenames, filenames.buffer);
FileNamesTable* data_filenames_get(data_t const* data)
{
char const* const path = data->data.path;
return UTIL_createExpandedFNT(&path, 1, 0 /* followLinks */ );
}
/**
@ -196,26 +185,33 @@ void data_filenames_free(data_filenames_t filenames) {
data_buffers_t data_buffers_get(data_t const* data) {
data_buffers_t buffers = {.size = 0};
data_filenames_t filenames = data_filenames_get(data);
if (filenames.size == 0)
FileNamesTable* const filenames = data_filenames_get(data);
if (filenames == NULL) return buffers;
if (filenames->tableSize == 0) {
UTIL_freeFileNamesTable(filenames);
return buffers;
}
data_buffer_t* buffersPtr =
(data_buffer_t*)malloc(filenames.size * sizeof(data_buffer_t));
if (buffersPtr == NULL)
(data_buffer_t*)malloc(filenames->tableSize * sizeof(*buffersPtr));
if (buffersPtr == NULL) {
UTIL_freeFileNamesTable(filenames);
return buffers;
}
buffers.buffers = (data_buffer_t const*)buffersPtr;
buffers.size = filenames.size;
buffers.size = filenames->tableSize;
for (size_t i = 0; i < filenames.size; ++i) {
buffersPtr[i] = data_buffer_read(filenames.filenames[i]);
for (size_t i = 0; i < filenames->tableSize; ++i) {
buffersPtr[i] = data_buffer_read(filenames->fileNames[i]);
if (buffersPtr[i].data == NULL) {
data_buffers_t const kEmptyBuffer = {};
data_buffers_free(buffers);
UTIL_freeFileNamesTable(filenames);
return kEmptyBuffer;
}
}
UTIL_freeFileNamesTable(filenames);
return buffers;
}