zip64writer 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/zip64/structures.rb +14 -16
- data/lib/zip64/version.rb +1 -1
- metadata +5 -5
    
        data/lib/zip64/structures.rb
    CHANGED
    
    | @@ -25,7 +25,7 @@ class Block | |
| 25 25 |  | 
| 26 26 | 
             
            		def encode(object, value)
         | 
| 27 27 | 
             
            			val = value || @options[:default]
         | 
| 28 | 
            -
            			[val].pack(@type). | 
| 28 | 
            +
            			[val].pack(@type).zip64_force_encoding("ASCII-8BIT")
         | 
| 29 29 | 
             
            		rescue
         | 
| 30 30 | 
             
            			raise "#{value.inspect} (#{val.inspect}?) is not a valid type for #{self.inspect}"
         | 
| 31 31 | 
             
            		end
         | 
| @@ -112,7 +112,7 @@ class Block | |
| 112 112 | 
             
            	end
         | 
| 113 113 |  | 
| 114 114 | 
             
            	def to_string
         | 
| 115 | 
            -
            		buf = ''. | 
| 115 | 
            +
            		buf = ''.zip64_force_encoding("ASCII-8BIT")
         | 
| 116 116 | 
             
            		fields.each do |f|
         | 
| 117 117 | 
             
            			buf << pack_field(f)
         | 
| 118 118 | 
             
            		end
         | 
| @@ -158,10 +158,8 @@ class Zip64ExtraField < Block | |
| 158 158 | 
             
            end
         | 
| 159 159 |  | 
| 160 160 | 
             
            class ::String
         | 
| 161 | 
            -
            	 | 
| 162 | 
            -
            		 | 
| 163 | 
            -
            			self
         | 
| 164 | 
            -
            		end
         | 
| 161 | 
            +
            	def zip64_force_encoding(what)
         | 
| 162 | 
            +
            		respond_to?(:force_encoding) and force_encoding(what) or self
         | 
| 165 163 | 
             
            	end
         | 
| 166 164 | 
             
            end
         | 
| 167 165 |  | 
| @@ -198,7 +196,7 @@ class LocalFileHeader < Block | |
| 198 196 | 
             
            		to_string
         | 
| 199 197 | 
             
            	end
         | 
| 200 198 | 
             
            	def filename=(str)
         | 
| 201 | 
            -
            		str = str.dup. | 
| 199 | 
            +
            		str = str.dup.zip64_force_encoding('ASCII-8BIT')
         | 
| 202 200 | 
             
            		self.filename_len = str.size
         | 
| 203 201 | 
             
            		@filename = str
         | 
| 204 202 | 
             
            	end
         | 
| @@ -214,12 +212,12 @@ class LocalFileHeader < Block | |
| 214 212 | 
             
            		(@extra_field ||= [])
         | 
| 215 213 | 
             
            	end
         | 
| 216 214 | 
             
            	def extra_field_str
         | 
| 217 | 
            -
            		buf = ''. | 
| 215 | 
            +
            		buf = ''.zip64_force_encoding('ASCII-8BIT')
         | 
| 218 216 | 
             
            		extra_field.each do |field|
         | 
| 219 217 | 
             
            			if field.respond_to?(:to_string)
         | 
| 220 | 
            -
            				buf << field.to_string. | 
| 218 | 
            +
            				buf << field.to_string.zip64_force_encoding('ASCII-8BIT')
         | 
| 221 219 | 
             
            			else
         | 
| 222 | 
            -
            				buf << field.to_s. | 
| 220 | 
            +
            				buf << field.to_s.zip64_force_encoding('ASCII-8BIT')
         | 
| 223 221 | 
             
            			end
         | 
| 224 222 | 
             
            		end
         | 
| 225 223 | 
             
            		buf
         | 
| @@ -259,17 +257,17 @@ class CDFileHeader < Block | |
| 259 257 | 
             
            		super + "#{@filename}#{extra_field}#{file_comment}"
         | 
| 260 258 | 
             
            	end
         | 
| 261 259 | 
             
            	def file_comment=(str)
         | 
| 262 | 
            -
            		str = str. | 
| 260 | 
            +
            		str = str.zip64_force_encoding('ASCII-8BIT')
         | 
| 263 261 | 
             
            		self.file_comment_len = str.size
         | 
| 264 262 | 
             
            		@file_comment = str
         | 
| 265 263 | 
             
            	end
         | 
| 266 264 | 
             
            	def filename=(str)
         | 
| 267 | 
            -
            		str = str. | 
| 265 | 
            +
            		str = str.zip64_force_encoding('ASCII-8BIT')
         | 
| 268 266 | 
             
            		self.filename_len = str.size
         | 
| 269 267 | 
             
            		@filename = str
         | 
| 270 268 | 
             
            	end
         | 
| 271 269 | 
             
            	def extra_field=(str)
         | 
| 272 | 
            -
            		str = str. | 
| 270 | 
            +
            		str = str.zip64_force_encoding('ASCII-8BIT')
         | 
| 273 271 | 
             
            		self.extra_field_len = str.size
         | 
| 274 272 | 
             
            		@extra_field = str
         | 
| 275 273 | 
             
            	end
         | 
| @@ -346,10 +344,10 @@ class InfoZipNewUnixExtraField < Block | |
| 346 344 | 
             
            		case field.name
         | 
| 347 345 | 
             
            		when :uid
         | 
| 348 346 | 
             
            			type = MAP[@uid_size]
         | 
| 349 | 
            -
            			[@uid].pack(type). | 
| 347 | 
            +
            			[@uid].pack(type).zip64_force_encoding('ASCII-8BIT')
         | 
| 350 348 | 
             
            		when :gid
         | 
| 351 349 | 
             
            			type = MAP[@gid_size]
         | 
| 352 | 
            -
            			[@gid].pack(type). | 
| 350 | 
            +
            			[@gid].pack(type).zip64_force_encoding('ASCII-8BIT')
         | 
| 353 351 | 
             
            		else
         | 
| 354 352 | 
             
            			super
         | 
| 355 353 | 
             
            		end
         | 
| @@ -432,7 +430,7 @@ class EOCDR < Block | |
| 432 430 | 
             
            		super + "#{@file_comment}"
         | 
| 433 431 | 
             
            	end
         | 
| 434 432 | 
             
            	def file_comment=(str)
         | 
| 435 | 
            -
            		 | 
| 433 | 
            +
            		ctr = str.zip64_force_encoding('ASCII-8BIT')
         | 
| 436 434 | 
             
            		@file_comment = str
         | 
| 437 435 | 
             
            		self.file_comment_len = str.size
         | 
| 438 436 | 
             
            	end
         | 
    
        data/lib/zip64/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,13 +1,13 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification 
         | 
| 2 2 | 
             
            name: zip64writer
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            -
              hash:  | 
| 4 | 
            +
              hash: 27
         | 
| 5 5 | 
             
              prerelease: 
         | 
| 6 6 | 
             
              segments: 
         | 
| 7 7 | 
             
              - 0
         | 
| 8 8 | 
             
              - 0
         | 
| 9 | 
            -
              -  | 
| 10 | 
            -
              version: 0.0. | 
| 9 | 
            +
              - 2
         | 
| 10 | 
            +
              version: 0.0.2
         | 
| 11 11 | 
             
            platform: ruby
         | 
| 12 12 | 
             
            authors: 
         | 
| 13 13 | 
             
            - Geoff Youngs
         | 
| @@ -15,7 +15,7 @@ autorequire: | |
| 15 15 | 
             
            bindir: bin
         | 
| 16 16 | 
             
            cert_chain: []
         | 
| 17 17 |  | 
| 18 | 
            -
            date:  | 
| 18 | 
            +
            date: 2012-02-24 00:00:00 Z
         | 
| 19 19 | 
             
            dependencies: []
         | 
| 20 20 |  | 
| 21 21 | 
             
            description: |
         | 
| @@ -64,7 +64,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 64 64 | 
             
            requirements: 
         | 
| 65 65 | 
             
            - none
         | 
| 66 66 | 
             
            rubyforge_project: 
         | 
| 67 | 
            -
            rubygems_version: 1.8. | 
| 67 | 
            +
            rubygems_version: 1.8.15
         | 
| 68 68 | 
             
            signing_key: 
         | 
| 69 69 | 
             
            specification_version: 3
         | 
| 70 70 | 
             
            summary: Zip64 Output Library
         |