Do not instantiate reference field with negative id

The reference fields can have a negative id if no record was selected on the
client. It is not expected to get such temporary instance from a reference
field on a saved record.

issue6091
review26941002
This commit is contained in:
Cédric Krier committed 2016-12-16 11:00:04 +01:00
1 parent cbf4e70c09
commit 92d8d29fad
1 file changed
+4 -1
+4 -1
View File
@@ -1312,9 +1312,12 @@ class ModelStorage(Model):
model_name, record_id = value.split(',')
Model = Pool().get(model_name)
try:
value = int(record_id)
record_id = int(record_id)
except ValueError:
return value
if record_id < 0:
return value
value = record_id
else:
Model = field.get_target()
except KeyError: