mod_blocklist: session[username] can't possibly be unset if that user is sending...
authorKim Alvefur <zash@zash.se>
Sun, 6 Dec 2015 01:19:04 +0000 (02:19 +0100)
committerKim Alvefur <zash@zash.se>
Sun, 6 Dec 2015 01:19:04 +0000 (02:19 +0100)
plugins/mod_blocklist.lua

index a870d278416f6a63c45300672c1a21cb695a16e3..d5e263b145bc29298e0e1c560e471f369bcfd953 100644 (file)
@@ -162,7 +162,7 @@ local function edit_blocklist(event)
 
        if is_blocking then
                for jid, in_roster in pairs(new) do
-                       if not blocklist[jid] and in_roster and sessions[username] then
+                       if not blocklist[jid] and in_roster then
                                for _, session in pairs(sessions[username].sessions) do
                                        if session.presence then
                                                module:send(st.presence({ type = "unavailable", to = jid, from = session.full_jid }));
@@ -171,15 +171,14 @@ local function edit_blocklist(event)
                        end
                end
        end
-       if sessions[username] then
-               local blocklist_push = st.iq({ type = "set", id = "blocklist-push" })
-                       :add_child(action); -- I am lazy
-
-               for _, session in pairs(sessions[username].sessions) do
-                       if session.interested_blocklist then
-                               blocklist_push.attr.to = session.full_jid;
-                               session.send(blocklist_push);
-                       end
+
+       local blocklist_push = st.iq({ type = "set", id = "blocklist-push" })
+               :add_child(action); -- I am lazy
+
+       for _, session in pairs(sessions[username].sessions) do
+               if session.interested_blocklist then
+                       blocklist_push.attr.to = session.full_jid;
+                       session.send(blocklist_push);
                end
        end