From d84be97b30d29d62283b69822bc88bc940986c75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Wed, 19 Nov 2014 21:24:25 +0100 Subject: [PATCH] pre_validate must not set value and must always validate xxx2many records issue4330 issue4331 review9841002 --- tryton/gui/window/view_form/model/field.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tryton/gui/window/view_form/model/field.py b/tryton/gui/window/view_form/model/field.py index 24ae6aa386..8461b8e991 100644 --- a/tryton/gui/window/view_form/model/field.py +++ b/tryton/gui/window/view_form/model/field.py @@ -113,7 +113,7 @@ class Field(object): constraintfields.add(leaf[0]) if localpart != 'id' or recordpart not in constraintfields: setdefault = False - if setdefault: + if setdefault and not pre_validate: self.set_client(record, value) self.get_state_attrs(record)['domain_readonly'] = ( domain_readonly) @@ -718,7 +718,7 @@ class O2MField(Field): else: ldomain = [('id', '=', None)] for record2 in record.value.get(self.name, []): - if not record2.loaded and record2.id >= 0: + if not record2.loaded and record2.id >= 0 and not pre_validate: continue test &= record2.validate(softvalidation=softvalidation, pre_validate=ldomain)