Diff

plugins/muc/muc.lib.lua @ 11235:1dba335eacea 0.11

MUC: Fix logic bug causing unnecessary presence to be sent, fixes #1615 (thanks damencho)
author Matthew Wild <mwild1@gmail.com>
date Tue, 15 Dec 2020 13:36:08 +0000
parent 11142:552cafd30eb2
child 11236:b1d7027be61e
child 11712:d117b92fd8e4
line wrap: on
line diff
--- a/plugins/muc/muc.lib.lua	Thu Dec 10 11:53:10 2020 +0100
+++ b/plugins/muc/muc.lib.lua	Tue Dec 15 13:36:08 2020 +0000
@@ -1326,8 +1326,8 @@
 			if occupant.role == nil then
 				module:fire_event("muc-occupant-left", {room = self; nick = occupant.nick; occupant = occupant;});
 			elseif is_semi_anonymous and
-				(old_role == "moderator" and occupant.role ~= "moderator") or
-				(old_role ~= "moderator" and occupant.role == "moderator") then -- Has gained or lost moderator status
+				((old_role == "moderator" and occupant.role ~= "moderator") or
+				(old_role ~= "moderator" and occupant.role == "moderator")) then -- Has gained or lost moderator status
 				-- Send everyone else's presences (as jid visibility has changed)
 				for real_jid in occupant:each_session() do
 					self:send_occupant_list(real_jid, function(occupant_jid, occupant) --luacheck: ignore 212 433