Always test field presence in initial value when computed changed values

The value could be None which is also the default value returned by dict.get.
So it will fail to detect change in such case.

issue4839
review23281002
This commit is contained in:
Cédric Krier committed 2015-07-14 00:04:08 +02:00
1 parent 2f4bf93817
commit dad49fa98b
1 file changed
+3 -1
+3 -1
View File
@@ -689,7 +689,9 @@ class ModelView(Model):
return changed
for fname, value in self._values.iteritems():
field = self._fields[fname]
if (value == init_values.get(fname)
# Always test key presence in case value is None
if (fname in init_values
and value == init_values[fname]
and field._type != 'one2many'):
continue
if field._type in ('many2one', 'one2one', 'reference'):