summaryrefslogtreecommitdiffstats
path: root/stream/stream_libarchive.c
diff options
context:
space:
mode:
Diffstat (limited to 'stream/stream_libarchive.c')
-rw-r--r--stream/stream_libarchive.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/stream/stream_libarchive.c b/stream/stream_libarchive.c
index 475febc726..6a39f8fac8 100644
--- a/stream/stream_libarchive.c
+++ b/stream/stream_libarchive.c
@@ -79,8 +79,17 @@ struct mp_archive *mp_archive_new(struct mp_log *log, struct stream *src,
mpa->arch = archive_read_new();
if (!mpa->arch)
goto err;
- archive_read_support_format_all(mpa->arch);
- archive_read_support_filter_all(mpa->arch);
+
+ archive_read_support_format_7zip(mpa->arch);
+ archive_read_support_format_gnutar(mpa->arch);
+ archive_read_support_format_tar(mpa->arch);
+ archive_read_support_format_iso9660(mpa->arch);
+ archive_read_support_format_rar(mpa->arch);
+ archive_read_support_format_zip(mpa->arch);
+ archive_read_support_filter_bzip2(mpa->arch);
+ archive_read_support_filter_gzip(mpa->arch);
+ archive_read_support_filter_xz(mpa->arch);
+
if (flags & MP_ARCHIVE_FLAG_UNSAFE)
archive_read_support_format_raw(mpa->arch);
archive_read_set_callback_data(mpa->arch, mpa);