From 6104445a8ff82f49968d2dabf9f0821ea08e7d8a Mon Sep 17 00:00:00 2001 From: Aki Tuomi Date: Tue, 16 Oct 2018 10:13:27 +0300 Subject: [PATCH] mail-lua: Change mailbox#status API to varargs It's much easier to use this way --- src/plugins/mail-lua/mail-storage-lua.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/plugins/mail-lua/mail-storage-lua.c b/src/plugins/mail-lua/mail-storage-lua.c index 32e9ec4e75..27bf396d1e 100644 --- a/src/plugins/mail-lua/mail-storage-lua.c +++ b/src/plugins/mail-lua/mail-storage-lua.c @@ -350,7 +350,13 @@ static int lua_storage_mailbox_status(lua_State *L) const char *const *keyword; struct dlua_script *script = dlua_script_from_state(L); struct mailbox *mbox = lua_check_storage_mailbox(script, 1); - enum mailbox_status_items items = luaL_checknumber(script->L, 2); + /* get items as list of parameters */ + enum mailbox_status_items items = 0; + + if (lua_gettop(script->L) < 2) + return luaL_error(script->L, "expecting at least 1 parameter"); + for(int i = 2; i <= lua_gettop(script->L); i++) + items |= (unsigned int)luaL_checkinteger(script->L, i); i_zero(&status); if (mailbox_get_status(mbox, items, &status) < 0) { -- 2.47.3