summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/sqlalchemy/orm/attributes.py5
-rw-r--r--lib/sqlalchemy/orm/identity.py3
2 files changed, 5 insertions, 3 deletions
diff --git a/lib/sqlalchemy/orm/attributes.py b/lib/sqlalchemy/orm/attributes.py
index efbc15d7f..dfc415d2a 100644
--- a/lib/sqlalchemy/orm/attributes.py
+++ b/lib/sqlalchemy/orm/attributes.py
@@ -1200,10 +1200,11 @@ class _ClassInstrumentationAdapter(ClassManager):
def has_state(self, instance):
try:
state = self._get_state(instance)
- return True
except exc.NO_STATE:
return False
-
+ else:
+ return True
+
def state_getter(self):
return self._get_state
diff --git a/lib/sqlalchemy/orm/identity.py b/lib/sqlalchemy/orm/identity.py
index c668bc5fe..4c1618df9 100644
--- a/lib/sqlalchemy/orm/identity.py
+++ b/lib/sqlalchemy/orm/identity.py
@@ -102,7 +102,8 @@ class WeakInstanceDict(IdentityMap):
return False
except KeyError:
return False
- return o is not None
+ else:
+ return o is not None
def contains_state(self, state):
return dict.get(self, state.key) is state