diff options
-rw-r--r-- | teal-src/util/datamapper.tl | 5 | ||||
-rw-r--r-- | util/datamapper.lua | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/teal-src/util/datamapper.tl b/teal-src/util/datamapper.tl index 99431f86..ed7ce62c 100644 --- a/teal-src/util/datamapper.tl +++ b/teal-src/util/datamapper.tl @@ -168,7 +168,10 @@ function parse_object (schema : schema_t, s : st.stanza_t) : { string : any } out[prop] = parse_object(propschema, c); end elseif proptype == "array" then - out[prop] = parse_array(propschema, s); + local a = parse_array(propschema, s); + if a and a[1] ~= nil then + out[prop] = a; + end else error "unreachable" end diff --git a/util/datamapper.lua b/util/datamapper.lua index 68c09434..00c75a25 100644 --- a/util/datamapper.lua +++ b/util/datamapper.lua @@ -138,7 +138,10 @@ function parse_object(schema, s) out[prop] = parse_object(propschema, c); end elseif proptype == "array" then - out[prop] = parse_array(propschema, s); + local a = parse_array(propschema, s); + if a and a[1] ~= nil then + out[prop] = a; + end else error("unreachable") end |