Merge pull request #457 from jplitza/master
luci-lib-jsonc: fix handling of strange keys, allow encoding []
This commit is contained in:
commit
a36a73cbdc
1 changed files with 5 additions and 4 deletions
|
@ -222,7 +222,7 @@ static int _lua_test_array(lua_State *L, int index)
|
|||
|
||||
out:
|
||||
lua_pop(L, 2);
|
||||
return 0;
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* check for holes */
|
||||
|
@ -254,7 +254,7 @@ static struct json_object * _lua_to_json(lua_State *L, int index)
|
|||
case LUA_TTABLE:
|
||||
max = _lua_test_array(L, index);
|
||||
|
||||
if (max > 0)
|
||||
if (max >= 0)
|
||||
{
|
||||
obj = json_object_new_array();
|
||||
|
||||
|
@ -286,8 +286,9 @@ static struct json_object * _lua_to_json(lua_State *L, int index)
|
|||
lua_pushvalue(L, -2);
|
||||
key = lua_tostring(L, -1);
|
||||
|
||||
json_object_object_add(obj, key,
|
||||
_lua_to_json(L, lua_gettop(L) - 1));
|
||||
if (key)
|
||||
json_object_object_add(obj, key,
|
||||
_lua_to_json(L, lua_gettop(L) - 1));
|
||||
|
||||
lua_pop(L, 2);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue