1.1 --- a/iixr/files.py Sat Feb 12 01:02:40 2011 +0100
1.2 +++ b/iixr/files.py Sat Feb 12 01:23:58 2011 +0100
1.3 @@ -187,14 +187,14 @@
1.4 pass
1.5
1.6 def seek(self, offset):
1.7 - if self.cache_start <= offset < self.cache_start + len(self.cache):
1.8 - self.cache = self.cache[offset - self.cache_start:]
1.9 + from_cache_start = offset - self.cache_start
1.10 + if 0 <= from_cache_start < len(self.cache):
1.11 + self.record_start = self.record_end = from_cache_start
1.12 else:
1.13 self.f.seek(offset)
1.14 self.cache = array('B')
1.15 - self.cache_start = offset
1.16 - self.record_start = 0
1.17 - self.record_end = 0
1.18 + self.cache_start = offset
1.19 + self.record_start = self.record_end = 0
1.20 self.reset()
1.21
1.22 def tell(self):