Sha256: 058170a0cee10506c83798a6b697e00f95722cadab4b15acab45bf7e296badb3
Contents?: true
Size: 785 Bytes
Versions: 42
Compression:
Stored size: 785 Bytes
Contents
module Zip class PassThruDecompressor < Decompressor #:nodoc:all def initialize(*args) super @read_so_far = 0 end 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 def eof @read_so_far >= decompressed_size end alias eof? eof end ::Zip::Decompressor.register(::Zip::COMPRESSION_METHOD_STORE, ::Zip::PassThruDecompressor) end # Copyright (C) 2002, 2003 Thomas Sondergaard # rubyzip is free software; you can redistribute it and/or # modify it under the terms of the ruby license.
Version data entries
42 entries across 32 versions & 8 rubygems