diff --git a/libarchive/archive_read_support_format_7zip.c b/libarchive/archive_read_support_format_7zip.c index 9c9f9a0e..1dea7008 100644 --- a/libarchive/archive_read_support_format_7zip.c +++ b/libarchive/archive_read_support_format_7zip.c @@ -505,7 +505,7 @@ archive_read_support_format_7zip(struct archive *_a) if (r != ARCHIVE_OK) free(zip); - return (ARCHIVE_OK); + return (r); } static int diff --git a/libarchive/archive_read_support_format_cab.c b/libarchive/archive_read_support_format_cab.c index f90250e1..469b9208 100644 --- a/libarchive/archive_read_support_format_cab.c +++ b/libarchive/archive_read_support_format_cab.c @@ -488,7 +488,7 @@ archive_read_support_format_cab(struct archive *_a) archive_wstring_free(&cab->ws); free(cab); } - return (ARCHIVE_OK); + return (r); } static int diff --git a/libarchive/archive_read_support_format_cpio.c b/libarchive/archive_read_support_format_cpio.c index ab51b473..8b3842d9 100644 --- a/libarchive/archive_read_support_format_cpio.c +++ b/libarchive/archive_read_support_format_cpio.c @@ -254,7 +254,7 @@ archive_read_support_format_cpio(struct archive *_a) if (r != ARCHIVE_OK) free(cpio); - return (ARCHIVE_OK); + return (r); } diff --git a/libarchive/archive_read_support_format_lha.c b/libarchive/archive_read_support_format_lha.c index 0a475461..cb22fcda 100644 --- a/libarchive/archive_read_support_format_lha.c +++ b/libarchive/archive_read_support_format_lha.c @@ -285,7 +285,7 @@ archive_read_support_format_lha(struct archive *_a) if (r != ARCHIVE_OK) free(lha); - return (ARCHIVE_OK); + return (r); } static size_t diff --git a/libarchive/archive_read_support_format_mtree.c b/libarchive/archive_read_support_format_mtree.c index 4e6bc9a7..d9c6d91b 100644 --- a/libarchive/archive_read_support_format_mtree.c +++ b/libarchive/archive_read_support_format_mtree.c @@ -238,7 +238,7 @@ archive_read_support_format_mtree(struct archive *_a) if (r != ARCHIVE_OK) free(mtree); - return (ARCHIVE_OK); + return (r); } static int diff --git a/libarchive/archive_read_support_format_rar5.c b/libarchive/archive_read_support_format_rar5.c index faddad9f..52b2e421 100644 --- a/libarchive/archive_read_support_format_rar5.c +++ b/libarchive/archive_read_support_format_rar5.c @@ -4497,5 +4497,5 @@ int archive_read_support_format_rar5(struct archive *_a) { free(rar5); } - return ARCHIVE_OK; + return ret; } diff --git a/libarchive/archive_read_support_format_tar.c b/libarchive/archive_read_support_format_tar.c index b73c0d93..ee7d55f2 100644 --- a/libarchive/archive_read_support_format_tar.c +++ b/libarchive/archive_read_support_format_tar.c @@ -294,7 +294,7 @@ archive_read_support_format_tar(struct archive *_a) if (r != ARCHIVE_OK) free(tar); - return (ARCHIVE_OK); + return (r); } static int diff --git a/libarchive/archive_read_support_format_zip.c b/libarchive/archive_read_support_format_zip.c index 4148c4c9..6a81eaf0 100644 --- a/libarchive/archive_read_support_format_zip.c +++ b/libarchive/archive_read_support_format_zip.c @@ -3911,7 +3911,7 @@ archive_read_support_format_zip_streamable(struct archive *_a) if (r != ARCHIVE_OK) free(zip); - return (ARCHIVE_OK); + return (r); } /* ------------------------------------------------------------------------ */ @@ -4704,7 +4704,7 @@ archive_read_support_format_zip_seekable(struct archive *_a) if (r != ARCHIVE_OK) free(zip); - return (ARCHIVE_OK); + return (r); } /*# vim:set noet:*/