diff options
author | Matthew Wild <mwild1@gmail.com> | 2025-02-17 11:35:03 +0000 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2025-02-17 11:35:03 +0000 |
commit | 2c0af0666b69ac75bcb89d5a6bdbd14d14cac614 (patch) | |
tree | cf306f64d50f8fefda41f2a11fcca26bbb54c94a | |
parent | f21ea48481bb050f07348ea7d4312dc72324da2b (diff) | |
download | prosody-2c0af0666b69ac75bcb89d5a6bdbd14d14cac614.tar.gz prosody-2c0af0666b69ac75bcb89d5a6bdbd14d14cac614.zip |
prosodyctl: check features: Fix traceback for components with no recommended modules (thanks Menel, riau)
-rw-r--r-- | util/prosodyctl/check.lua | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/util/prosodyctl/check.lua b/util/prosodyctl/check.lua index dc8c75f1..4ac7af9e 100644 --- a/util/prosodyctl/check.lua +++ b/util/prosodyctl/check.lua @@ -1613,21 +1613,23 @@ local function check(arg) if found then local enabled_component_modules = api(found):get_option_inherited_set("modules_enabled"); local recommended_mods = recommended_component_modules[component_module]; - local missing_mods = {}; - for _, mod in ipairs(recommended_mods) do - if not enabled_component_modules:contains(mod) then - table.insert(missing_mods, mod); + if recommended_mods then + local missing_mods = {}; + for _, mod in ipairs(recommended_mods) do + if not enabled_component_modules:contains(mod) then + table.insert(missing_mods, mod); + end end - end - if #missing_mods > 0 then - if not current_feature.lacking_component_modules then - current_feature.lacking_component_modules = {}; + if #missing_mods > 0 then + if not current_feature.lacking_component_modules then + current_feature.lacking_component_modules = {}; + end + table.insert(current_feature.lacking_component_modules, { + host = found; + component_module = component_module; + missing_mods = missing_mods; + }); end - table.insert(current_feature.lacking_component_modules, { - host = found; - component_module = component_module; - missing_mods = missing_mods; - }); end end end |