• Guido van Rossum's avatar
    Fix a problem I saw when some tests here failed: there's a pattern in · ec6c4a89
    Guido van Rossum authored
    the code
    
        try:
            root = self._getRoot()
            ...
        except:
            self._closeDB(root)
    	self._delDB()
    	raise
    
    which fails with an UnboundLocalError if the first line in the try
    clause fails.  Fixed this by setting 'root = None' before each such
    try clause, and adding a None check to _closeDB().  Also removed a
    useless 'root = None' from the body of _closeDB().
    
    Barry: I saw this in the saz 1.0c1 release.  Is it worth backporting?
    Probably not given that we're not going to do a merge pre-1.0.
    ec6c4a89
testBTrees.py 22.7 KB