From 49e5514eaf91f70205374c55ed7383a6b9f8a12d Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Thu, 29 Jul 2021 17:53:01 +0100 Subject: [PATCH] [Minor] More tags output fixes --- lualib/rspamadm/mime.lua | 44 ++++++++++++++++++++++++---------------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/lualib/rspamadm/mime.lua b/lualib/rspamadm/mime.lua index a92c8c01c..9dc387ef0 100644 --- a/lualib/rspamadm/mime.lua +++ b/lualib/rspamadm/mime.lua @@ -386,28 +386,38 @@ local function extract_handler(opts) local hc = part:get_html() local res = {} process_func = function(elt) - return rspamd_logger.slog("%s", elt) + local fun = require "fun" + if type(elt) == 'table' then + return table.concat(fun.totable( + fun.map( + function(t) + return rspamd_logger.slog("%s", t) + end, + elt)), '\n') + else + return rspamd_logger.slog("%s", elt) + end end hc:foreach_tag('any', function(tag) - local elt = {} - local ex = tag:get_extra() - elt.tag = tag:get_type() - if ex then - elt.extra = ex - end - local content = tag:get_content() - if content then - elt.content = tostring(content) - end - local style = tag:get_style() - if style then - elt.style = style - end - table.insert(res, elt) + local elt = {} + local ex = tag:get_extra() + elt.tag = tag:get_type() + if ex then + elt.extra = ex + end + local content = tag:get_content() + if content then + elt.content = tostring(content) + end + local style = tag:get_style() + if style then + elt.style = style + end + table.insert(res, elt) end) table.insert(out_elts[fname], res) - else + else -- opts.structure table.insert(out_elts[fname], tostring(part:get_content(how))) end end -- 2.39.5