# File tar.rb, line 337 337: def write( stream ) 338: blocks_written = 0 339: 340: @contents ||= "" 341: 342: @header.size = @contents.length 343: @header.chksum = header.compute_checksum 344: 345: hdr_bytes = @header.to_s 346: 347: stream << hdr_bytes 348: 349: extra = RecordHeader.padding( hdr_bytes.length ) 350: stream << "\0" * extra 351: 352: blocks_written += ( hdr_bytes.length + extra ) / RecordHeader::RECORD_SIZE 353: 354: stream << @contents 355: 356: extra = RecordHeader.padding( @contents.length ) 357: stream << "\0" * extra 358: 359: blocks_written += ( @contents.length + extra ) / RecordHeader::RECORD_SIZE 360: 361: return blocks_written 362: end