projects
/
oweals
/
luci.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
364c271
)
luci-lib-json: support serializing userdata
author
Jo-Philipp Wich
<jo@mein.io>
Fri, 18 May 2018 14:59:16 +0000
(16:59 +0200)
committer
Jo-Philipp Wich
<jo@mein.io>
Fri, 18 May 2018 14:59:16 +0000
(16:59 +0200)
Fixes the following error when attempting to serialize userdata objects:
.../json.lua:81: attempt to call local 'parser' (a nil value)
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
libs/luci-lib-json/luasrc/json.lua
patch
|
blob
|
history
diff --git
a/libs/luci-lib-json/luasrc/json.lua
b/libs/luci-lib-json/luasrc/json.lua
index f7b57f916c1e7c7d62a30dd62a1fa5e52ee4c7b5..6d4d752b19809fe6a841d924a5cabf1b215da52b 100644
(file)
--- a/
libs/luci-lib-json/luasrc/json.lua
+++ b/
libs/luci-lib-json/luasrc/json.lua
@@
-181,13
+181,18
@@
function Encoder.parse_iter(self, obj)
end
end
+function Encoder.parse_udata(self, obj)
+ return self:parse_string(tostring(obj))
+end
+
Encoder.parsers = {
['nil'] = Encoder.parse_nil,
['table'] = Encoder.parse_iter,
['number'] = Encoder.parse_number,
['string'] = Encoder.parse_string,
['boolean'] = Encoder.parse_bool,
- ['function'] = Encoder.parse_iter
+ ['function'] = Encoder.parse_iter,
+ ['userdata'] = Encoder.parse_udata,
}