From c7337bf3b309768e9dd67d0bf65a5dce826b3fd5 Mon Sep 17 00:00:00 2001 From: Christophe Matthieu Date: Wed, 23 Dec 2015 10:58:37 +0100 Subject: [PATCH] [FIX] web: Can't save a x2m in list editable if contains a m2m_tags with a color field m2m_tags inlist editable view try to get color on validation, the field is invalid because the mutex is pending. Fix: don't re-render the fields Issue: steps to reproduce: - Create a new instance, install "sale" - Create a product "prepayment", service, invoice on ordered qties - Create aproduct "project phase", service, invoice on delivered qties, manually track delivered qties - Create a SO with once prepayment, and twice a line with "project phase". ( the name (description) of the lines should be "phase 1" and "phase 2" ) - Create invoice => The prepayment is invoiced - Go back to the SO, try to change the delivered qties of the first phase to 1 - Save => error, odoo doesn't let you save. --- addons/web/static/src/js/views/form_relational_widgets.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/web/static/src/js/views/form_relational_widgets.js b/addons/web/static/src/js/views/form_relational_widgets.js index de8112f48d1..c2e363c7777 100644 --- a/addons/web/static/src/js/views/form_relational_widgets.js +++ b/addons/web/static/src/js/views/form_relational_widgets.js @@ -969,7 +969,10 @@ var X2ManyListView = ListView.extend({ var valid = _.every(cached_records, function(record){ _.each(fields, function(field){ var value = record.values[field.name]; + var tmp = field.no_rerender; + field.no_rerender = true; field.set_value(_.isArray(value) && _.isArray(value[0]) ? [COMMANDS.delete_all()].concat(value) : value); + field.no_rerender = tmp; }); return _.every(fields, function(field){ field.process_modifiers();