'Read operation for sparse files.'

def readsparse(self, size):

    data = []
    while (size > 0):
        buf = self.readsparsesection(size)
        if (not buf):
            break
        size -= len(buf)
        data.append(buf)
    return ''.join(data)
