class Zip::PassThruDecompressor
:nodoc:all
def eof
def eof @read_so_far >= decompressed_size end
def initialize(*args)
def initialize(*args) super @read_so_far = 0 end
def read(length = nil, outbuf = '')
def read(length = nil, outbuf = '') return (length.nil? || length.zero? ? '' : nil) if eof if length.nil? || (@read_so_far + length) > decompressed_size length = decompressed_size - @read_so_far end @read_so_far += length input_stream.read(length, outbuf) end