Sha256: 29c40de6b062c0e0da9544c5d8098d0ac535cbc375b4c9e4c326d6f6f5fde82b
Contents?: true
Size: 787 Bytes
Versions: 3
Compression:
Stored size: 787 Bytes
Contents
module Zip class PassThruDecompressor < Decompressor #:nodoc:all def initialize(*args) super @read_so_far = 0 end def read(length = nil, outbuf = ''.b) 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
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rubyzip-2.4.1 | lib/zip/pass_thru_decompressor.rb |
rubyzip-2.4 | lib/zip/pass_thru_decompressor.rb |
rubyzip-2.4.rc1 | lib/zip/pass_thru_decompressor.rb |