]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
dont rely upon AttributeError to test for None
authorMike Bayer <mike_mp@zzzcomputing.com>
Wed, 13 Aug 2008 22:49:38 +0000 (22:49 +0000)
committerMike Bayer <mike_mp@zzzcomputing.com>
Wed, 13 Aug 2008 22:49:38 +0000 (22:49 +0000)
lib/sqlalchemy/pool.py

index ddf7cb51ede2c67623b68a52033f6a360cdec74e..c0d98ffc471ab982f4b27d4c86869ea7cb3722e1 100644 (file)
@@ -161,11 +161,15 @@ class Pool(object):
             return _ConnectionFairy(self).checkout()
 
         try:
-            return self._threadconns.current().checkout()
+            rec = self._threadconns.current()
+            if rec:
+                return rec.checkout()
         except AttributeError:
-            agent = _ConnectionFairy(self)
-            self._threadconns.current = weakref.ref(agent)
-            return agent.checkout()
+            pass
+
+        agent = _ConnectionFairy(self)
+        self._threadconns.current = weakref.ref(agent)
+        return agent.checkout()
 
     def return_conn(self, record):
         if self._use_threadlocal and hasattr(self._threadconns, "current"):