This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Claudiu.Popa
Recipients Arfrever, Claudiu.Popa, kousu, terry.reedy
Date 2013-10-19.06:29:33
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1382164174.21.0.0746613752247.issue19282@psf.upfronthosting.co.za>
In-reply-to
Content
Attached patch checks that the db is actually closed after the `with`. Also, I noticed that dbm.dumb doesn't behave like the rest of the variants, as seen in the following:

>>> import dbm.dumb as d
>>> db = d.open('test.dat', 'c')
>>> db.close()
>>> db.keys()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/tank/libs/cpython/Lib/dbm/dumb.py", line 212, in keys
    return list(self._index.keys())
AttributeError: 'NoneType' object has no attribute 'keys'
>>>

vs

>>> import dbm.gnu as g
>>> db = g.open('test.dat', 'c')
>>> db.close()
>>> db.keys()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
_gdbm.error: GDBM object has already been closed
>>>
History
Date User Action Args
2013-10-19 06:29:34Claudiu.Popasetrecipients: + Claudiu.Popa, terry.reedy, kousu, Arfrever
2013-10-19 06:29:34Claudiu.Popasetmessageid: <1382164174.21.0.0746613752247.issue19282@psf.upfronthosting.co.za>
2013-10-19 06:29:34Claudiu.Popalinkissue19282 messages
2013-10-19 06:29:34Claudiu.Popacreate