From 54e77b9859b2c0e94624d1eeb3c929693a0ce304 Mon Sep 17 00:00:00 2001
From: Matthew Wild <mwild1@gmail.com>
Date: Wed, 16 Dec 2015 16:41:48 +0000
Subject: MUC: Fix incorrect nesting of status codes when room config changes
 (fixes #579)

---
 plugins/muc/muc.lib.lua | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/plugins/muc/muc.lib.lua b/plugins/muc/muc.lib.lua
index d42fb2eb..5879c256 100644
--- a/plugins/muc/muc.lib.lua
+++ b/plugins/muc/muc.lib.lua
@@ -736,7 +736,7 @@ function room_mt:process_form(origin, stanza)
 
 	if dirty or whois_changed then
 		local msg = st.message({type='groupchat', from=self.jid})
-			:tag('x', {xmlns='http://jabber.org/protocol/muc#user'}):up()
+			:tag('x', {xmlns='http://jabber.org/protocol/muc#user'});
 
 		if dirty then
 			msg.tags[1]:tag('status', {code = '104'}):up();
@@ -745,6 +745,7 @@ function room_mt:process_form(origin, stanza)
 			local code = (whois == 'moderators') and "173" or "172";
 			msg.tags[1]:tag('status', {code = code}):up();
 		end
+		msg:up();
 
 		self:broadcast_message(msg, false)
 	end
-- 
cgit v1.2.3