svn commit: r189464 - in head/lib/libarchive: . test
Tim Kientzle
kientzle at FreeBSD.org
Fri Mar 6 16:25:34 PST 2009
Author: kientzle
Date: Sat Mar 7 00:25:33 2009
New Revision: 189464
URL: http://svn.freebsd.org/changeset/base/189464
Log:
Merge r659 from libarchive.googlecode.com: Correctly report "none"
as the compression name when no other read filter bid. Add some
assertions to various tests to verify that read filters are properly
setting the textual name as well as the compression code.
Modified:
head/lib/libarchive/archive_read.c
head/lib/libarchive/test/test_compat_bzip2.c
head/lib/libarchive/test/test_compat_gzip.c
head/lib/libarchive/test/test_read_format_cpio_bin_Z.c
head/lib/libarchive/test/test_read_format_tar.c
Modified: head/lib/libarchive/archive_read.c
==============================================================================
--- head/lib/libarchive/archive_read.c Fri Mar 6 23:32:45 2009 (r189463)
+++ head/lib/libarchive/archive_read.c Sat Mar 7 00:25:33 2009 (r189464)
@@ -289,12 +289,10 @@ archive_read_open2(struct archive *_a, v
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)
Modified: head/lib/libarchive/test/test_compat_bzip2.c
==============================================================================
--- head/lib/libarchive/test/test_compat_bzip2.c Fri Mar 6 23:32:45 2009 (r189463)
+++ head/lib/libarchive/test/test_compat_bzip2.c Sat Mar 7 00:25:33 2009 (r189464)
@@ -69,6 +69,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));
Modified: head/lib/libarchive/test/test_compat_gzip.c
==============================================================================
--- head/lib/libarchive/test/test_compat_gzip.c Fri Mar 6 23:32:45 2009 (r189463)
+++ head/lib/libarchive/test/test_compat_gzip.c Sat Mar 7 00:25:33 2009 (r189464)
@@ -69,6 +69,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));
Modified: head/lib/libarchive/test/test_read_format_cpio_bin_Z.c
==============================================================================
--- head/lib/libarchive/test/test_read_format_cpio_bin_Z.c Fri Mar 6 23:32:45 2009 (r189463)
+++ head/lib/libarchive/test/test_read_format_cpio_bin_Z.c Sat Mar 7 00:25:33 2009 (r189464)
@@ -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);
Modified: head/lib/libarchive/test/test_read_format_tar.c
==============================================================================
--- head/lib/libarchive/test/test_read_format_tar.c Fri Mar 6 23:32:45 2009 (r189463)
+++ head/lib/libarchive/test/test_read_format_tar.c Sat Mar 7 00:25:33 2009 (r189464)
@@ -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);
More information about the svn-src-head
mailing list