lib/tiff.rb in exifr-0.10.5 vs lib/tiff.rb in exifr-0.10.6

- old
+ new

@@ -372,11 +372,11 @@ class IFD # :nodoc: attr_reader :type, :fields def initialize(data, offset = nil, type = :image) - @data, @type, @fields = data, type, {} + @data, @offset, @type, @fields = data, offset, type, {} pos = offset || @data.readlong(4) num = @data.readshort(pos) pos += 2 @@ -411,11 +411,15 @@ def inspect to_hash.inspect end + def next? + @offset_next != 0 && @offset_next < @data.size && (@offset || 0) < @offset_next + end + def next - IFD.new(@data, @offset_next) unless @offset_next == 0 || @offset_next >= @data.size + IFD.new(@data, @offset_next) if next? end def to_yaml_properties ['@fields'] end \ No newline at end of file