diff --git a/openerp/models.py b/openerp/models.py index a4404edfa71..9a9bff26f82 100644 --- a/openerp/models.py +++ b/openerp/models.py @@ -3652,6 +3652,8 @@ class BaseModel(object): return True if isinstance(ids, (int, long)): ids = [ids] + if not context: + context = {} result_store = self._store_get_values(cr, uid, ids, self._fields.keys(), context) @@ -3727,7 +3729,8 @@ class BaseModel(object): obj._store_set_values(cr, uid, rids, fields, context) # recompute new-style fields - recs.recompute() + if recs.env.recompute and context.get('recompute', True): + recs.recompute() # auditing: deletions are infrequent and leave no trace in the database _unlink.info('User #%s deleted %s records with IDs: %r', uid, self._name, ids)