struct blob_attr *msg)
{
struct ubus_lua_object *o = container_of(obj, struct ubus_lua_object, o);
+ int rv = 0;
lua_getglobal(state, "__ubus_cb");
lua_rawgeti(state, -1, o->r);
lua_pushnil(state);
else
ubus_lua_parse_blob_array(state, blob_data(msg), blob_len(msg), true);
- lua_call(state, 2, 0);
+ lua_call(state, 2, 1);
+ if (lua_isnumber(state, -1))
+ rv = lua_tonumber(state, -1);
} else
lua_pop(state, 1);
- return 0;
+ return rv;
}
static int lua_gettablelen(lua_State *L, int index)