archive_open_callback *client_opener, archive_read_callback *client_reader,
archive_close_callback *client_closer)
{
+ int r;
+
/* Old archive_read_open() is just a thin shell around
* archive_read_open1. */
archive_read_set_open_callback(a, client_opener);
archive_read_set_read_callback(a, client_reader);
archive_read_set_close_callback(a, client_closer);
- archive_read_set_callback_data(a, client_data);
+ r = archive_read_set_callback_data(a, client_data);
+ if (r < 0)
+ return (r);
return archive_read_open1(a);
}
archive_skip_callback *client_skipper,
archive_close_callback *client_closer)
{
+ int r;
+
/* Old archive_read_open2() is just a thin shell around
* archive_read_open1. */
- archive_read_set_callback_data(a, client_data);
+ r = archive_read_set_callback_data(a, client_data);
+ if (r < 0)
+ return (r);
archive_read_set_open_callback(a, client_opener);
archive_read_set_read_callback(a, client_reader);
archive_read_set_skip_callback(a, client_skipper);
la_seek_stat_t st;
struct read_fd_data *mine;
void *b;
+ int r;
archive_clear_error(a);
if (la_seek_fstat(fd, &st) != 0) {
archive_read_set_skip_callback(a, file_skip);
archive_read_set_seek_callback(a, file_seek);
archive_read_set_close_callback(a, file_close);
- archive_read_set_callback_data(a, mine);
+ r = archive_read_set_callback_data(a, mine);
+ if (r < 0)
+ return (r);
return (archive_read_open1(a));
}
struct read_FILE_data *mine;
size_t block_size = 128 * 1024;
void *b;
+ int r;
archive_clear_error(a);
mine = calloc(1, sizeof(*mine));
archive_read_set_skip_callback(a, FILE_skip);
archive_read_set_seek_callback(a, FILE_seek);
archive_read_set_close_callback(a, FILE_close);
- archive_read_set_callback_data(a, mine);
+ r = archive_read_set_callback_data(a, mine);
+ if (r < 0)
+ return (r);
return (archive_read_open1(a));
}
size_t size, size_t read_size)
{
struct read_memory_data *mine;
+ int r;
mine = calloc(1, sizeof(*mine));
if (mine == NULL) {
archive_read_set_seek_callback(a, memory_read_seek);
archive_read_set_skip_callback(a, memory_read_skip);
archive_read_set_close_callback(a, memory_read_close);
- archive_read_set_callback_data(a, mine);
+ r = archive_read_set_callback_data(a, mine);
+ if (r < 0)
+ return (r);
return (archive_read_open1(a));
}
size_t size, size_t read_size, int level)
{
struct read_memory_data *mine = NULL;
+ int r;
switch (level) {
case 3:
archive_read_set_read_callback(a, memory_read);
archive_read_set_close_callback(a, memory_read_close);
- archive_read_set_callback_data(a, mine);
+ r = archive_read_set_callback_data(a, mine);
+ if (r < 0)
+ return (r);
+ __LA_FALLTHROUGH;
+ default:
+ break;
}
return archive_read_open1(a);
}