Skip to content

Commit 2d389e1

Browse files
committed
Fix file descriptor leak in anydbm
This didn't close a local dbm file on error. Visible only when tests are run on an NFS mount.
1 parent cc254bc commit 2d389e1

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

roundup/backends/back_anydbm.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -408,11 +408,13 @@ def getnode(self, classname, nodeid, db=None, cache=1):
408408
if db is None:
409409
db = self.getclassdb(classname)
410410
if nodeid not in db:
411+
db.close()
411412
raise IndexError("no such %s %s" % (classname, nodeid))
412413

413414
# check the uncommitted, destroyed nodes
414415
if (classname in self.destroyednodes and
415416
nodeid in self.destroyednodes[classname]):
417+
db.close()
416418
raise IndexError("no such %s %s" % (classname, nodeid))
417419

418420
# decode

0 commit comments

Comments
 (0)