Issue #9790 has been updated by nobu (Nobuyoshi Nakada). jeremyevans0 (Jeremy Evans) wrote: > For example, in OpenBSD's packages, the first gzip stream in the package contains the package metadata. That is read completely, and after processing the metadata, the programs that handle packages determine whether it needs to read the actual package data (stored in the second gzip stream). If it doesn't need to process the package data, it can then stop at that point without having read any more than it needs to. It is an interesting usage. Does that metadata need to be a separate member, not the leading part of a large stream? ---------------------------------------- Bug #9790: Zlib::GzipReader only decompressed the first of concatenated files https://bugs.ruby-lang.org/issues/9790#change-83960 * Author: quainjn (Jake Quain) * Status: Feedback * Priority: Normal * Assignee: drbrain (Eric Hodel) * Target version: * ruby -v: 2.1.1 * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- There is a similar old issue in Node that I came across that perfectly describes the situation in ruby: https://github.com/joyent/node/issues/6032 In ruby given the following setup: ``` echo "1" > 1.txt echo "2" > 2.txt gzip 1.txt gzip 2.txt cat 1.txt.gz 2.txt.gz > 3.txt.gz ``` Calling: ``` Zlib::GzipReader.open("3.txt.gz") do |gz| print gz.read end ``` would just print: ``` 1 ``` ---Files-------------------------------- zlib-gzreader-each_file-9790.patch (3.47 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>