Make dumbdbm merely "dumb", rather than "terminally broken". Without this
patch, it's almost impossible to use dumbdbm _without_ causing horrible
datalossage. With this patch, dumbdbm passes my own horrible torture test,
as well as the roundup test suite.
dumbdbm really could do with a smidgin of a rewrite or two, but that's not
suitable for the release21-maint branch.
return len(self._index)
def close(self):
+ self._commit()
self._index = None
self._datfile = self._dirfile = self._bakfile = None
+ def __del__(self):
+ if self._index is not None:
+ self._commit()
+
+
def open(file, flag=None, mode=0666):
# flag, mode arguments are currently ignored