diff --git a/tryton/gui/window/view_form/model/field.py b/tryton/gui/window/view_form/model/field.py index 13e804001b..63a4d16346 100644 --- a/tryton/gui/window/view_form/model/field.py +++ b/tryton/gui/window/view_form/model/field.py @@ -549,6 +549,8 @@ class O2MField(CharField): fields = {} if group is not None: fields = group.fields.copy() + # Unconnect to prevent infinite loop + group.signal_unconnect(group) group.destroy() elif record.model_name == self.attrs['relation']: fields = record.group.fields @@ -585,6 +587,8 @@ class O2MField(CharField): fields = {} if group is not None: fields = group.fields.copy() + # Unconnect to prevent infinite loop + group.signal_unconnect(group) group.destroy() elif record.model_name == self.attrs['relation']: fields = record.group.fields @@ -735,6 +739,8 @@ class M2MField(O2MField): fields = {} if group is not None: fields = group.fields.copy() + # Unconnect to prevent infinite loop + group.signal_unconnect(group) group.destroy() elif record.model_name == self.attrs['relation']: fields = record.group.fields