diff options
| -rw-r--r-- | lib/sqlalchemy/orm/attributes.py | 5 | ||||
| -rw-r--r-- | lib/sqlalchemy/orm/identity.py | 3 |
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 |
