mirror of
https://github.com/webrecorder/pywb.git
synced 2025-03-15 00:03:28 +01:00
cdx: ensure cdx file is closed when iterator is done, since cdx files
are opened per-lookup, related to #45
This commit is contained in:
parent
a3b931b45e
commit
5e4b830fa7
@ -28,8 +28,17 @@ class CDXFile(CDXSource):
|
||||
self.filename = filename
|
||||
|
||||
def load_cdx(self, query):
|
||||
source = open(self.filename)
|
||||
return iter_range(source, query.key, query.end_key)
|
||||
def do_open():
|
||||
try:
|
||||
source = open(self.filename)
|
||||
gen = iter_range(source, query.key, query.end_key)
|
||||
for line in gen:
|
||||
yield line
|
||||
finally:
|
||||
source.close()
|
||||
|
||||
return do_open()
|
||||
#return iter_range(do_open(), query.key, query.end_key)
|
||||
|
||||
def __str__(self):
|
||||
return 'CDX File - ' + self.filename
|
||||
|
Loading…
x
Reference in New Issue
Block a user