aboutsummaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2021-03-24 00:48:02 +0100
committerKim Alvefur <zash@zash.se>2021-03-24 00:48:02 +0100
commit4720eea24f8fa382c778ecf28dd0e98a2c43c1d3 (patch)
tree2517499dec8316a1323578931bccc5d23e593a3a /util
parentd68de27a5dffaae65b82cdb45e6cae415ce305a5 (diff)
downloadprosody-4720eea24f8fa382c778ecf28dd0e98a2c43c1d3.tar.gz
prosody-4720eea24f8fa382c778ecf28dd0e98a2c43c1d3.zip
util.datamapper: Don't include empty unwrapped arrays
Since there is no way to distinguish an empty such array from a zero-length array. Dropping it seems like the least annoying thing to do.
Diffstat (limited to 'util')
-rw-r--r--util/datamapper.lua5
1 files changed, 4 insertions, 1 deletions
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