From 2249d428bd8f27d8e952233c4a15a75f69b12316 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Tue, 2 Aug 2022 21:12:38 +0100 Subject: [Fix] Adjust length of the fuzzy checks for short text parts Reported by: @citrin --- lualib/lua_fuzzy.lua | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'lualib') diff --git a/lualib/lua_fuzzy.lua b/lualib/lua_fuzzy.lua index 1f82752f9..ce4ac55ee 100644 --- a/lualib/lua_fuzzy.lua +++ b/lualib/lua_fuzzy.lua @@ -126,7 +126,11 @@ local function check_length(task, part, rule) local adjusted_bytes = bytes if part:is_text() then - bytes = part:get_text():get_length() + -- Fuzzy plugin uses stripped utf content to get an exact hash, that + -- corresponds to `get_content_oneline()` + -- However, in the case of empty parts this method returns `nil`, so extra + -- sanity check is required. + bytes = #(part:get_text():get_content_oneline() or '') if rule.text_multiplier then adjusted_bytes = bytes * rule.text_multiplier end -- cgit v1.2.3