Date: Sat, 6 Dec 2008 06:45:15 +0000 (UTC) From: Tim Kientzle <kientzle@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/lib/libarchive archive_read.c archive_read_private.h archive_read_support_compression_all.c archive_read_support_compression_bzip2.c archive_read_support_compression_compress.c archive_read_support_compression_gzip.c archive_read_support_compression_none.c archive_read_support_compression_program.c archive_read_support_format_ar.c archive_read_support_format_cpio.c archive_read_support_format_empty.c ... Message-ID: <200812060645.mB66jPcj020483@repoman.freebsd.org>
index | next in thread | raw e-mail
kientzle 2008-12-06 06:45:15 UTC
FreeBSD src repository
Modified files:
lib/libarchive archive_read.c archive_read_private.h
archive_read_support_compression_all.c
archive_read_support_compression_bzip2.c
archive_read_support_compression_compress.c
archive_read_support_compression_gzip.c
archive_read_support_compression_none.c
archive_read_support_compression_program.c
archive_read_support_format_ar.c
archive_read_support_format_cpio.c
archive_read_support_format_empty.c
archive_read_support_format_iso9660.c
archive_read_support_format_mtree.c
archive_read_support_format_tar.c
archive_read_support_format_zip.c
Log:
SVN rev 185679 on 2008-12-06 06:45:15Z by kientzle
MfP4: Big read filter refactoring.
This is an attempt to eliminate a lot of redundant
code from the read ("decompression") filters by
changing them to juggle arbitrary-sized blocks
and consolidate reblocking code at a single point
in archive_read.c.
Along the way, I've changed the internal read/consume
API used by the format handlers to a slightly
different style originally suggested by des@. It
does seem to simplify a lot of common cases.
The most dramatic change is, of course, to
archive_read_support_compression_none(), which
has just evaporated into a no-op as the blocking
code this used to hold has all been moved up
a level.
There's at least one more big round of refactoring
yet to come before the individual filters are as
straightforward as I think they should be...
Revision Changes Path
1.39 +453 -145 src/lib/libarchive/archive_read.c
1.7 +95 -41 src/lib/libarchive/archive_read_private.h
1.7 +6 -0 src/lib/libarchive/archive_read_support_compression_all.c
1.19 +191 -220 src/lib/libarchive/archive_read_support_compression_bzip2.c
1.11 +98 -113 src/lib/libarchive/archive_read_support_compression_compress.c
1.17 +288 -347 src/lib/libarchive/archive_read_support_compression_gzip.c
1.20 +4 -334 src/lib/libarchive/archive_read_support_compression_none.c
1.6 +118 -104 src/lib/libarchive/archive_read_support_compression_program.c
1.11 +17 -39 src/lib/libarchive/archive_read_support_format_ar.c
1.27 +31 -43 src/lib/libarchive/archive_read_support_format_cpio.c
1.4 +2 -3 src/lib/libarchive/archive_read_support_format_empty.c
1.27 +18 -22 src/lib/libarchive/archive_read_support_format_iso9660.c
1.11 +10 -25 src/lib/libarchive/archive_read_support_format_mtree.c
1.72 +43 -60 src/lib/libarchive/archive_read_support_format_tar.c
1.28 +52 -53 src/lib/libarchive/archive_read_support_format_zip.c
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200812060645.mB66jPcj020483>
