3
0

Improve reference fallbacks

If reference can't be established; remove the value so it
doesn't break record resolution.
This commit is contained in:
Tomaž Jerman
2020-03-18 17:34:42 +01:00
parent 39cb2fa434
commit c49124bf31
+19 -2
View File
@@ -326,12 +326,29 @@ func updateRefs(n *Node, repo repository.RecordRepository) error {
return errors.New("moduleField.record.invalidRefFormat")
}
val = n.mapping[ref][val]
v.Value = val
if mod, ok := n.mapping[ref]; ok {
if vv, ok := mod[val]; ok {
v.Value = vv
} else {
v.Value = ""
continue
}
} else {
v.Value = ""
continue
}
}
}
// update values
nv := types.RecordValueSet{}
for _, v := range r.Values {
if v.Value != "" {
nv = append(nv, v)
}
}
r.Values = nv
err := repo.UpdateValues(r.ID, r.Values)
if err != nil {
return err