diff --git a/bin/osv/fields.py b/bin/osv/fields.py index f4442761bb8..fddb9742fe1 100644 --- a/bin/osv/fields.py +++ b/bin/osv/fields.py @@ -457,7 +457,8 @@ class one2many(_column): ids2 = obj.pool.get(self._obj).search(cr, user, self._domain + [(self._fields_id, 'in', ids)], limit=self._limit, context=context) for r in obj.pool.get(self._obj)._read_flat(cr, user, ids2, [self._fields_id], context=context, load='_classic_write'): - res[r[self._fields_id]].append(r['id']) + if r[self._fields_id] in res: + res[r[self._fields_id]].append(r['id']) return res def set(self, cr, obj, id, field, values, user=None, context=None):