--- diffdir.py~ 2007-08-20 17:19:25.000000000 +0200 +++ diffdir.py 2007-09-10 20:41:03.225984300 +0200 @@ -504,8 +504,9 @@ def get_data_block(self, fp, max_size): """Return pair (next data block, boolean last data block)""" - buf = fp.read(max_size) - if len(buf) < max_size: + read_size = min(64*1024, max_size) + buf = fp.read(read_size) + if len(buf) < read_size: if fp.close(): raise DiffDirException("Error closing file") return (buf, 1) else: return (buf, None)