lib: drop libarchive compat macros and use non deprecated functions

This commit is contained in:
Duncan Overbruck 2021-06-25 18:04:15 +02:00
parent fcbd7ef042
commit 2dc22401d5
No known key found for this signature in database
GPG Key ID: 335C1D17EC3D6E35
5 changed files with 13 additions and 47 deletions

View File

@ -56,41 +56,6 @@
#define __UNCONST(a) ((void *)(uintptr_t)(const void *)(a))
#endif
/* libarchive compat */
#if ARCHIVE_VERSION_NUMBER >= 3000000
#define archive_read_support_compression_all(x) \
archive_read_support_filter_all(x)
#define archive_read_support_compression_gzip(x) \
archive_read_support_filter_gzip(x)
#define archive_read_support_compression_bzip2(x) \
archive_read_support_filter_bzip2(x)
#define archive_read_support_compression_xz(x) \
archive_read_support_filter_xz(x)
#define archive_write_set_compression_gzip(x) \
archive_write_add_filter_gzip(x)
#define archive_write_set_compression_bzip2(x) \
archive_write_add_filter_bzip2(x)
#define archive_write_set_compression_xz(x) \
archive_write_add_filter_xz(x)
#define archive_read_finish(x) \
archive_read_free(x)
#define archive_write_finish(x) \
archive_write_free(x)
#define archive_compression_name(x) \
archive_filter_name(x, 0)
#endif
#ifndef __arraycount
#define __arraycount(x) (sizeof(x) / sizeof(*x))
#endif

View File

@ -572,8 +572,8 @@ xbps_unpack_binary_pkg(struct xbps_handle *xhp, xbps_dictionary_t pkg_repod)
out:
if (pkg_fd != -1)
close(pkg_fd);
if (ar)
archive_read_finish(ar);
if (ar != NULL)
archive_read_free(ar);
if (bpkg)
free(bpkg);

View File

@ -103,8 +103,8 @@ open_archive_by_url(struct url *url)
archive_read_support_format_tar(a);
if (archive_read_open(a, f, fetch_archive_open, fetch_archive_read,
fetch_archive_close)) {
archive_read_finish(a);
fetch_archive_close) != ARCHIVE_OK) {
archive_read_free(a);
return NULL;
}
@ -128,8 +128,9 @@ open_archive(const char *url)
archive_read_support_filter_zstd(a);
archive_read_support_format_tar(a);
if (archive_read_open_filename(a, url, 32768)) {
archive_read_finish(a);
/* XXX: block size? */
if (archive_read_open_filename(a, url, 32768) != ARCHIVE_OK) {
archive_read_free(a);
return NULL;
}
return a;
@ -170,7 +171,7 @@ xbps_archive_fetch_file(const char *url, const char *fname)
}
archive_read_data_skip(a);
}
archive_read_finish(a);
archive_read_free(a);
return buf;
}
@ -212,7 +213,7 @@ xbps_repo_fetch_remote(struct xbps_repo *repo, const char *url)
if (i == 2)
break;
}
archive_read_finish(a);
archive_read_free(a);
if (xbps_object_type(repo->idxmeta) == XBPS_TYPE_DICTIONARY)
repo->is_signed = true;
@ -253,7 +254,7 @@ xbps_archive_fetch_file_into_fd(const char *url, const char *fname, int fd)
}
archive_read_data_skip(a);
}
archive_read_finish(a);
archive_read_free(a);
return rv;
}

View File

@ -373,7 +373,7 @@ xbps_repo_close(struct xbps_repo *repo)
return;
if (repo->ar != NULL) {
archive_read_finish(repo->ar);
archive_read_free(repo->ar);
repo->ar = NULL;
}
if (repo->fd != -1) {

View File

@ -732,8 +732,8 @@ collect_binpkg_files(struct xbps_handle *xhp, xbps_dictionary_t pkg_repod,
out:
if (pkg_fd != -1)
close(pkg_fd);
if (ar)
archive_read_finish(ar);
if (ar != NULL)
archive_read_free(ar);
free(bpkg);
return rv;
}