From: Tim Kientzle Date: Wed, 18 Feb 2009 05:59:34 +0000 (-0500) Subject: Issue 8: Compression name should be "none" if we're reading X-Git-Tag: v2.7.0~247 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f94587bd9d42a906edf23641e2b05f2096d0db96;p=thirdparty%2Flibarchive.git Issue 8: Compression name should be "none" if we're reading an uncompressed archive. Fill in assertions to verify textual name for various compression formats. SVN-Revision: 659 --- diff --git a/libarchive/archive_read.c b/libarchive/archive_read.c index efb6c61b2..8dad2d758 100644 --- a/libarchive/archive_read.c +++ b/libarchive/archive_read.c @@ -297,12 +297,10 @@ archive_read_open2(struct archive *_a, void *client_data, filter->read = client_read_proxy; filter->skip = client_skip_proxy; filter->close = client_close_proxy; + filter->name = "none"; + filter->code = ARCHIVE_COMPRESSION_NONE; a->filter = filter; - /* In case there's no filter. */ - a->archive.compression_code = ARCHIVE_COMPRESSION_NONE; - a->archive.compression_name = "none"; - /* Build out the input pipeline. */ e = build_stream(a); if (e == ARCHIVE_OK) diff --git a/libarchive/test/test_compat_bzip2.c b/libarchive/test/test_compat_bzip2.c index 05a5f6195..81d2ab263 100644 --- a/libarchive/test/test_compat_bzip2.c +++ b/libarchive/test/test_compat_bzip2.c @@ -78,6 +78,7 @@ compat_bzip2(const char *name) /* Verify that the format detection worked. */ assertEqualInt(archive_compression(a), ARCHIVE_COMPRESSION_BZIP2); + assertEqualString(archive_compression_name(a), "bzip2"); assertEqualInt(archive_format(a), ARCHIVE_FORMAT_TAR_USTAR); assertEqualInt(ARCHIVE_OK, archive_read_close(a)); diff --git a/libarchive/test/test_compat_gzip.c b/libarchive/test/test_compat_gzip.c index dc7a520c5..a967979c1 100644 --- a/libarchive/test/test_compat_gzip.c +++ b/libarchive/test/test_compat_gzip.c @@ -78,6 +78,7 @@ verify(const char *name) /* Verify that the format detection worked. */ assertEqualInt(archive_compression(a), ARCHIVE_COMPRESSION_GZIP); + assertEqualString(archive_compression_name(a), "gzip"); assertEqualInt(archive_format(a), ARCHIVE_FORMAT_TAR_USTAR); assertEqualInt(ARCHIVE_OK, archive_read_close(a)); diff --git a/libarchive/test/test_compat_xz.c b/libarchive/test/test_compat_xz.c index 838f0686a..b8b42ecf6 100644 --- a/libarchive/test/test_compat_xz.c +++ b/libarchive/test/test_compat_xz.c @@ -77,6 +77,7 @@ compat_xz(const char *name) /* Verify that the format detection worked. */ assertEqualInt(archive_compression(a), ARCHIVE_COMPRESSION_XZ); + assertEqualString(archive_compression_name(a), "xz"); assertEqualInt(archive_format(a), ARCHIVE_FORMAT_TAR_USTAR); assertEqualInt(ARCHIVE_OK, archive_read_close(a)); diff --git a/libarchive/test/test_read_format_cpio_bin_Z.c b/libarchive/test/test_read_format_cpio_bin_Z.c index f9862c472..f6353f3a6 100644 --- a/libarchive/test/test_read_format_cpio_bin_Z.c +++ b/libarchive/test/test_read_format_cpio_bin_Z.c @@ -46,6 +46,7 @@ DEFINE_TEST(test_read_format_cpio_bin_Z) failure("archive_compression_name(a)=\"%s\"", archive_compression_name(a)); assertEqualInt(archive_compression(a), ARCHIVE_COMPRESSION_COMPRESS); + assertEqualString(archive_compression_name(a), "compress (.Z)"); failure("archive_format_name(a)=\"%s\"", archive_format_name(a)); assertEqualInt(archive_format(a), ARCHIVE_FORMAT_CPIO_BIN_LE); diff --git a/libarchive/test/test_read_format_tar.c b/libarchive/test/test_read_format_tar.c index b8facc696..1c8ba1d98 100644 --- a/libarchive/test/test_read_format_tar.c +++ b/libarchive/test/test_read_format_tar.c @@ -71,6 +71,7 @@ static void verifyEmpty(void) assertA(0 == archive_read_open_memory(a, archiveEmpty, 512)); assertEqualIntA(a, ARCHIVE_EOF, archive_read_next_header(a, &ae)); assertEqualInt(archive_compression(a), ARCHIVE_COMPRESSION_NONE); + assertEqualString(archive_compression_name(a), "none"); failure("512 zero bytes should be recognized as a tar archive."); assertEqualInt(archive_format(a), ARCHIVE_FORMAT_TAR);