summaryrefslogtreecommitdiff
path: root/archival/libunarchive/decompress_bunzip2.c
AgeCommit message (Collapse)Author
2004-03-15Remove trailing whitespace. Update copyright to include 2004.Eric Andersen
2003-11-15Move from read_gz to the pipe()+fork() method.Glenn L McGrath
open_transformer(), common code for pipe+fork. Function pointer for read() no longer needed. Allow inflate to be initialised with a specified buffer size to avoid over-reading. Reset static variables in inflate_get_next_window to fix a bug where only the first file in a .zip would be be extracted.
2003-11-05Fix tar -j supportGlenn L McGrath
Use the old fork() method of tar compression support, rather than read_bz2.... - (*uncompress)(int in, int out) seems like a more natural interface for compression code. - it might improve performance by seperating the work into one cpu bound and one io bound process. - There is extra code required to do read_[gz|bunzip] since (*uncompress)(int in, int out) will normally be used by the standalone compression applet. There have been problems with this method so if you see a "Short read" error let me know.
2003-10-31Put back the tar support stubs (and warnings) for now.Eric Andersen
2003-10-28Add some error messages, use xmalloc instead of mallocGlenn L McGrath
2003-10-23Another bzip2 update and speedup from Manuel Novoa III, with someEric Andersen
additional changes (primarily lots of comments) from Rob Landley.
2003-10-18Manuel Novoa III writes:Eric Andersen
Hello Rob, Here's a patch to your bunzip-3.c file. Nice work btw. One minor bug fix... checking for error return when read()ing. Some size/performance optimizations as well. One instance of memset() seems unnecssary. You might want to take a look. Anyway, on my machine, decompressing linux-2.6.0-test7.tar.bz2 to /dev/null gave the following times: bunzip-3.c bzcat (system) bunzip-3.c (patched) real 0m24.420s 0m22.725s 0m20.701s user 0m23.930s 0m22.170s 0m20.180s sys 0m0.070s 0m0.080s 0m0.140s Size of the patched version is comparable (slightly larger or smaller depending on compiler flags). Manuel
2003-10-18Rob Landley's new micro-bunzip version 3. Rob writes:Eric Andersen
The API for using partial writes, as described in my last message, sucked. So here's a patch against my last patch that changes things so that write_bunzip_data calls read_bunzip_data itself behind the scenes whenever necessary. So usage is now just start_bunzip(), write_bunzip_data() until it returns a negative number, and then the cleanup at the end of uncompressStream. It adds 32 bytes to the executable, but it should allow the caller (tar) to be simplified enough to compensate. Total -Os stripped exe size now 6856 bytes. Rob P.S. I attached the whole C file so you don't have to keep incremental patches straight if you don't want to. :) P.S. In the version I'm banging on now, I've simplified the license to just LGPL. I read the OSL a bit more closely and the patent termination clause would have bit IBM in their counter-suit of SCO if the code in question had been OSL instead of GPL, and I've decided I just don't want to beta-test legal code right now.
2003-03-19Major coreutils update.Manuel Novoa III
2002-11-05Fail silently if a partial tar header is read as tar.bz2 is leaving trailing ↵Glenn L McGrath
junk (not sure why), add some missing files
2002-11-03Abstract read and seek in unarchiving code, convert bunzip to file ↵Glenn L McGrath
descriptors, support tar -j
2002-11-03Move bunzip2 idecompression code to libunarchiveGlenn L McGrath