changeset df4c0d705b32 in sao:6.2
details: https://hg.tryton.org/sao?cmd=changeset&node=df4c0d705b32
description:
        Test if value is not null before using its keys in set_on_change

        issue11497
        review421171003
        (grafted from 3d7c4160bb3852ee7a8e1244090d6fabff5ac457)
diffstat:

 src/model.js |  8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diffs (39 lines):

diff -r 7bdb2d1cf818 -r df4c0d705b32 src/model.js
--- a/src/model.js      Fri May 20 08:23:19 2022 +0200
+++ b/src/model.js      Tue May 31 23:50:48 2022 +0200
@@ -2324,7 +2324,7 @@
             if (value instanceof Array) {
                 return this._set_value(record, value, false, true);
             }
-            if (value.add || value.update) {
+            if (value && (value.add || value.update)) {
                 var context = this.get_context(record);
                 fields = record._values[this.name].model.fields;
                 var new_field_names = {};
@@ -2364,7 +2364,7 @@
             }
 
             var group = record._values[this.name];
-            if (value.delete) {
+            if (value && value.delete) {
                 value.delete.forEach(function(record_id) {
                     var record2 = group.get(record_id);
                     if (record2) {
@@ -2372,7 +2372,7 @@
                     }
                 }.bind(this));
             }
-            if (value.remove) {
+            if (value && value.remove) {
                 value.remove.forEach(function(record_id) {
                     var record2 = group.get(record_id);
                     if (record2) {
@@ -2381,7 +2381,7 @@
                 }.bind(this));
             }
 
-            if (value.add || value.update) {
+            if (value && (value.add || value.update)) {
                 // First set already added fields to prevent triggering a
                 // second on_change call
                 if (value.update) {

Reply via email to