id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 6994,gzip_decompressor issue with unusual files,Gavin Band ,Jonathan Turkanis,"The gzip_decompressor implementation fails on gzip files that contain an empty block after a non-empty one. (You can make such a file by gzipping a nonempty and an empty file and concatenating them, but they are also sometimes written by other tools.) Here such a file: $ hexdump -C hello.txt.gz 00000000 1f 8b 08 00 0d ea b4 4f 00 03 cb 48 cd c9 c9 57 |.......O...H...W| 00000010 28 c9 48 2d 4a e5 02 00 8e 45 d1 59 0c 00 00 00 |(.H-J....E.Y....| 00000020 1f 8b 08 00 18 ea b4 4f 00 03 03 00 00 00 00 00 |.......O........| 00000030 00 00 00 00 |....| 00000034 My file reading code is: /* test.cpp */ #include #include #include #include #include int main( int, char** ) { boost::iostreams::filtering_istream stream ; stream.push( boost::iostreams::gzip_decompressor() ) ; boost::iostreams::file_source file( argv[1] ) ; stream.push( file ) ; boost::iostreams::copy( stream, std::cout ) ; } Using gunzip on the above file works fine: $ gunzip -c ../hello.txt.bgz Hello, this is a test file. Using the test program does not: $ ./test ../hello.txt.bgz terminate called after throwing an instance of 'boost::exception_detail::clone_impl >' what(): gzip error ",Bugs,new,To Be Determined,iostreams,Boost 1.49.0,Problem,,gzip gzip_decompressor bgzip,