Move file_archive_inflate_init to file_archive_zlib

This commit is contained in:
twinaphex 2016-01-24 20:18:52 +01:00
parent fa00f51e80
commit 7d29929819
4 changed files with 14 additions and 14 deletions

View File

@ -423,17 +423,6 @@ void zlib_deflate_init(void *data, int level)
deflateInit(stream, level);
}
bool file_archive_inflate_init(void *data)
{
z_stream *stream = (z_stream*)data;
if (!stream)
return false;
if (inflateInit(stream) != Z_OK)
return false;
return true;
}
bool file_archive_inflate_data_to_file_init(
zlib_file_handle_t *handle,
const uint8_t *cdata, uint32_t csize, uint32_t size)

View File

@ -99,6 +99,17 @@ static int zlib_stream_compress_data_to_file(void *data)
return 0;
}
static bool zlib_stream_decompress_init(void *data)
{
z_stream *stream = (z_stream*)data;
if (!stream)
return false;
if (inflateInit(stream) != Z_OK)
return false;
return true;
}
const struct zlib_file_backend zlib_backend = {
zlib_stream_new,
zlib_stream_free,
@ -106,6 +117,7 @@ const struct zlib_file_backend zlib_backend = {
zlib_stream_get_avail_out,
zlib_stream_get_total_out,
zlib_stream_decrement_total_out,
zlib_stream_decompress_init,
zlib_stream_compress_free,
zlib_stream_compress_data_to_file,
"zlib"

View File

@ -791,7 +791,7 @@ static bool rpng_load_image_argb_process_init(rpng_t *rpng,
if (!rpng->process.stream)
return false;
if (!file_archive_inflate_init(rpng->process.stream))
if (!rpng->process.stream_backend->stream_decompress_init(rpng->process.stream))
return false;
rpng->process.inflate_buf = (uint8_t*)malloc(rpng->process.inflate_buf_size);

View File

@ -45,6 +45,7 @@ struct zlib_file_backend
uint32_t (*stream_get_avail_out)(void*);
uint64_t (*stream_get_total_out)(void*);
void (*stream_decrement_total_out)(void *, unsigned);
bool (*stream_decompress_init)(void *);
void (*stream_compress_free)(void *);
int (*stream_compress_data_to_file)(void *);
const char *ident;
@ -162,8 +163,6 @@ struct string_list *compressed_file_list_new(const char *filename,
void zlib_deflate_init(void *data, int level);
bool file_archive_inflate_init(void *data);
void zlib_set_stream(void *data,
uint32_t avail_in,
uint32_t avail_out,