add_file_simple (Gem::Package::TarWriter)

    # File lib/rubygems/package.rb, line 227
        def add_file_simple(name, mode, size)
          raise BlockNeeded unless block_given?
          raise ClosedIO if @closed
          name, prefix = split_name(name)
          header = TarHeader.new(:name => name, :mode => mode,
                                 :size => size, :prefix => prefix).to_s
          @io.write header
          os = BoundedStream.new(@io, size)
          yield os
          #FIXME: what if an exception is raised in the block?
          min_padding = size - os.written
          @io.write("\0" * min_padding)
          remainder = (512 - (size % 512)) % 512
          @io.write("\0" * remainder)
        end