diff options
author | Patrick Griffis <tingping@tingping.se> | 2020-09-17 15:50:28 -0700 |
---|---|---|
committer | Patrick Griffis <tingping@tingping.se> | 2020-09-17 15:50:28 -0700 |
commit | 453cb7ca79ace05f53667e523dc534bdeb7ddee0 (patch) | |
tree | 0a29c139d0d769480b6c13a0ccf384b96590862c /plugins/lua | |
parent | 163608d7fd861c2c4911a38f45be484c88626bdc (diff) |
Increase max number of words a line can be split into
This may have unintended side-effects but 32 is a very low value and I was seeing real world bugs being caused by this. Specifically an ISUPPORT line with more features than this could store.
Diffstat (limited to 'plugins/lua')
-rw-r--r-- | plugins/lua/lua.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/plugins/lua/lua.c b/plugins/lua/lua.c index 941342bb..8d6b730e 100644 --- a/plugins/lua/lua.c +++ b/plugins/lua/lua.c @@ -35,6 +35,8 @@ #include <hexchat-plugin.h> +#define WORD_ARRAY_LEN 48 + static char plugin_name[] = "Lua"; static char plugin_description[] = "Lua scripting interface"; static char plugin_version[16] = "1.3"; @@ -275,13 +277,13 @@ static int api_command_closure(char *word[], char *word_eol[], void *udata) base = lua_gettop(L); lua_rawgeti(L, LUA_REGISTRYINDEX, info->ref); lua_newtable(L); - for(i = 1; i < 32 && *word_eol[i]; i++) + for(i = 1; i < WORD_ARRAY_LEN && *word_eol[i]; i++) { lua_pushstring(L, word[i]); lua_rawseti(L, -2, i); } lua_newtable(L); - for(i = 1; i < 32 && *word_eol[i]; i++) + for(i = 1; i < WORD_ARRAY_LEN && *word_eol[i]; i++) { lua_pushstring(L, word_eol[i]); lua_rawseti(L, -2, i); @@ -462,13 +464,13 @@ static int api_server_closure(char *word[], char *word_eol[], void *udata) base = lua_gettop(L); lua_rawgeti(L, LUA_REGISTRYINDEX, info->ref); lua_newtable(L); - for(i = 1; i < 32 && *word_eol[i]; i++) + for(i = 1; i < WORD_ARRAY_LEN && *word_eol[i]; i++) { lua_pushstring(L, word[i]); lua_rawseti(L, -2, i); } lua_newtable(L); - for(i = 1; i < 32 && *word_eol[i]; i++) + for(i = 1; i < WORD_ARRAY_LEN && *word_eol[i]; i++) { lua_pushstring(L, word_eol[i]); lua_rawseti(L, -2, i); @@ -521,13 +523,13 @@ static int api_server_attrs_closure(char *word[], char *word_eol[], hexchat_even base = lua_gettop(L); lua_rawgeti(L, LUA_REGISTRYINDEX, info->ref); lua_newtable(L); - for(i = 1; i < 32 && *word_eol[i]; i++) + for(i = 1; i < WORD_ARRAY_LEN && *word_eol[i]; i++) { lua_pushstring(L, word[i]); lua_rawseti(L, -2, i); } lua_newtable(L); - for(i = 1; i < 32 && *word_eol[i]; i++) + for(i = 1; i < WORD_ARRAY_LEN && *word_eol[i]; i++) { lua_pushstring(L, word_eol[i]); lua_rawseti(L, -2, i); |