diff options
Diffstat (limited to 'src/lua')
-rw-r--r-- | src/lua/lua_mimepart.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/lua/lua_mimepart.c b/src/lua/lua_mimepart.c index 66b588e3a..21a46d496 100644 --- a/src/lua/lua_mimepart.c +++ b/src/lua/lua_mimepart.c @@ -1240,7 +1240,16 @@ lua_textpart_get_fuzzy_hashes (lua_State * L) rspamd_stat_token_t *word; struct lua_shingle_filter_cbdata cbd; - if (part && pool) { + + if (part == NULL || pool == NULL) { + return luaL_error (L, "invalid arguments"); + } + + if (IS_TEXT_PART_EMPTY (part) || part->utf_words == NULL) { + lua_pushnil (L); + lua_pushnil (L); + } + else { /* TODO: add keys and algorithms support */ rspamd_cryptobox_hash (key, "rspamd", strlen ("rspamd"), NULL, 0); @@ -1294,9 +1303,6 @@ lua_textpart_get_fuzzy_hashes (lua_State * L) } } } - else { - return luaL_error (L, "invalid arguments"); - } return 2; } |