summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorNicolas Lempereur <nle@odoo.com>2016-10-21 17:10:57 +0200
committerChristophe Simonis <chs@odoo.com>2016-10-27 14:46:08 +0200
commit25616b9f2bbca3f03dbde1dc81a57986241c1aab (patch)
treebb799dadde667a837cffdee84a167375d13818ac /addons/web/static/src
parent477e69d8502b949b500a6e12be424edde775564f (diff)
[FIX] web: repair length field in view list
Underscore method _.each expects an array like object when a "length" property is present. This was an issue with a record having a numeric "length" field set to a non-negative value. When changing a line the change would not appear on blur. This issue was fixed with 0e664c9e9 but introduced back with f0e331e00. opw-691070 Forward-port of 5d17749ff47c02294d5ff2ae56bbcef9d082562e which has been forgotten during previous forward-port.
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/js/views/list_view.js7
1 files changed, 4 insertions, 3 deletions
diff --git a/addons/web/static/src/js/views/list_view.js b/addons/web/static/src/js/views/list_view.js
index 301b3936d02..3e01ea0c4f6 100644
--- a/addons/web/static/src/js/views/list_view.js
+++ b/addons/web/static/src/js/views/list_view.js
@@ -560,11 +560,12 @@ var ListView = View.extend( /** @lends instance.web.ListView# */ {
self.records.remove(record);
return;
}
- _.each(values, function (value, key) {
+ // _.each is broken if a field "length" is present
+ for (var key in values) {
if (fields[key] && fields[key].type === 'many2many')
record.set(key + '__display', false, {silent: true});
- record.set(key, value, {silent: true});
- });
+ record.set(key, values[key], {silent: true});
+ }
record.trigger('change', record);
/* When a record is reloaded, there is a rendering lag because of the addition/suppression of