'Load the next segment from the image file'

def load_segment(self, f, is_irom_segment=False):

    file_offs = f.tell()
    (offset, size) = struct.unpack('<II', f.read(8))
    self.warn_if_unusual_segment(offset, size, is_irom_segment)
    segment_data = f.read(size)
    if (len(segment_data) < size):
        raise FatalError(('End    of    file    reading    segment    0x%x,    length    %d    (actual    length    %d)' % (offset, size, len(segment_data))))
    segment = ImageSegment(offset, segment_data, file_offs)
    self.segments.append(segment)
    return segment
