From: Mike Bayer Date: Mon, 23 Oct 2006 21:25:01 +0000 (+0000) Subject: expired instances will get mapper extension's populate_instance behavior when reloade... X-Git-Tag: rel_0_3_1~43 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=025b5283c6d511c08751e845d791ed451c9c8e7d;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git expired instances will get mapper extension's populate_instance behavior when reloaded, if present --- diff --git a/lib/sqlalchemy/orm/mapper.py b/lib/sqlalchemy/orm/mapper.py index 1327644b2b..812619499f 100644 --- a/lib/sqlalchemy/orm/mapper.py +++ b/lib/sqlalchemy/orm/mapper.py @@ -1134,8 +1134,8 @@ class Mapper(object): if populate_existing or context.session.is_expired(instance, unexpire=True): if not context.identity_map.has_key(identitykey): context.identity_map[identitykey] = instance - for prop in self.__props.values(): - prop.execute(context, instance, row, identitykey, True) + if self.extension.populate_instance(self, context, row, instance, identitykey, True) is EXT_PASS: + self.populate_instance(context, instance, row, identitykey, True) if self.extension.append_result(self, context, row, instance, identitykey, result, isnew) is EXT_PASS: if result is not None: result.append(instance)