# HG changeset patch # User Matthew Wild # Date 1530961912 -3600 # Node ID fa80b3231a02ecc6a0245d6f2b2dfe0994ac16bd # Parent 23f66f04e2164e2a9e9f30fe05882e83651ff749 util.dataforms: More robust handling of field values, especially booleans Ensure that a non-nil data[field_name] always overrides the field's default, and that values of boolean 'false' are always rendered in the form. diff -r 23f66f04e216 -r fa80b3231a02 util/dataforms.lua --- a/util/dataforms.lua Fri Jul 06 19:02:19 2018 +0200 +++ b/util/dataforms.lua Sat Jul 07 12:11:52 2018 +0100 @@ -42,9 +42,14 @@ form:text_tag("desc", field.desc); end - local value = (data and data[field.name]) or field.value; + local value; + if data and data[field.name] ~= nil then + value = data[field.name]; + else + value = field.value; + end - if value then + if value ~= nil then -- Add value, depending on type if field_type == "hidden" then if type(value) == "table" then