From fc543106c808f617785453e4e48872498729d35f Mon Sep 17 00:00:00 2001 From: Anthony Baxter Date: Fri, 21 Dec 2001 04:46:19 +0000 Subject: [PATCH] d'oh! could have _sworn_ I checked this in last weekend. 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. This patch should go into the trunk as well. --- Lib/dumbdbm.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Lib/dumbdbm.py b/Lib/dumbdbm.py index f1cc41bd4503..f71cb8ae677c 100644 --- a/Lib/dumbdbm.py +++ b/Lib/dumbdbm.py @@ -139,9 +139,14 @@ class _Database: 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 = None): # flag, mode arguments are currently ignored -- 2.47.3