# HG changeset patch # User Matthew Wild # Date 1680628188 -3600 # Node ID ba94a53019856f02b8f1573ef28252de507e0ccc # Parent 8ef197cccd74902953d54cc4026c8fe9fc224a89 mod_cloud_notify_filters: Fix traceback when invalid JIDs are submitted diff -r 8ef197cccd74 -r ba94a5301985 mod_cloud_notify_filters/mod_cloud_notify_filters.lua --- a/mod_cloud_notify_filters/mod_cloud_notify_filters.lua Sat Apr 01 13:56:53 2023 +0100 +++ b/mod_cloud_notify_filters/mod_cloud_notify_filters.lua Tue Apr 04 18:09:48 2023 +0100 @@ -28,7 +28,12 @@ if filter_muted then local muted_jids = {}; for item in filter_muted:childtags("item") do - muted_jids[jid.prep(item.attr.jid)] = true; + local room_jid = jid.prep(item.attr.jid); + if not room_jid then + module:log("warn", "Skipping invalid JID: <%s>", room_jid); + else + muted_jids[room_jid] = true; + end end event.push_info.muted_jids = muted_jids; end @@ -37,10 +42,15 @@ if filter_groupchat then local groupchat_rules = {}; for item in filter_groupchat:childtags("room") do - groupchat_rules[jid.prep(item.attr.jid)] = { - when = item.attr.allow; - nick = item.attr.nick; - }; + local room_jid = jid.prep(item.attr.jid); + if not room_jid then + module:log("warn", "Skipping invalid JID: <%s>", item.attr.jid); + else + groupchat_rules[room_jid] = { + when = item.attr.allow; + nick = item.attr.nick; + }; + end end event.push_info.groupchat_rules = groupchat_rules; end