18676: Merge branch 'main' into 18676-anon-token-improvement
[arvados.git] / sdk / ruby / lib / arvados / collection.rb
index 796d1785aed99b346c16f4fbdd877af28378b3a8..e29deba6c9de314f1deb9c14fd6e723c8e085ac9 100644 (file)
@@ -207,7 +207,7 @@ module Arv
         loop do
           ii = (lo + hi) / 2
           range = @ranges[ii]
-          if range.include?(target) && (target < range.end || ii == hi)
+          if range.include?(target) && (target < range.end || ii == hi-1)
             return ii
           elsif ii == lo
             raise RangeError.new("%i not in segment" % target)
@@ -536,12 +536,10 @@ module Arv
         end
 
         segment_start = @loc_range_start
-        segment_end = segment_start
         segment.locators.each do |loc_s|
           r = LocatorRange.new(loc_s, @loc_range_start)
           @loc_ranges << r
           @loc_range_start = r.end
-          segment_end += (r.end - r.begin)
         end
         @file_specs << "#{segment.start_pos + segment_start}:#{segment.length}:#{escape_name(filename)}"
       end