Mercurial > prosody-hg
comparison plugins/muc/muc.lib.lua @ 2051:2567f4bf0085
MUC: Fixed an issue with multi-session nicks where the 'from' attribute in a presence broadcast was not being properly set.
| author | Waqas Hussain <waqas20@gmail.com> |
|---|---|
| date | Sun, 25 Oct 2009 04:19:24 +0500 |
| parents | b8c3dbf76a2e |
| children | f5a198127dd3 |
comparison
equal
deleted
inserted
replaced
| 2050:adc1b92b8c6b | 2051:2567f4bf0085 |
|---|---|
| 237 self:route_stanza(pr); | 237 self:route_stanza(pr); |
| 238 if jid ~= new_jid then | 238 if jid ~= new_jid then |
| 239 pr = st.clone(occupant.sessions[new_jid]) | 239 pr = st.clone(occupant.sessions[new_jid]) |
| 240 :tag("x", {xmlns='http://jabber.org/protocol/muc#user'}) | 240 :tag("x", {xmlns='http://jabber.org/protocol/muc#user'}) |
| 241 :tag("item", {affiliation=occupant.affiliation, role=occupant.role}); | 241 :tag("item", {affiliation=occupant.affiliation, role=occupant.role}); |
| 242 pr.attr.from = current_nick; | |
| 242 self:broadcast_except_nick(pr, current_nick); | 243 self:broadcast_except_nick(pr, current_nick); |
| 243 end | 244 end |
| 244 else | 245 else |
| 245 occupant.role = 'none'; | 246 occupant.role = 'none'; |
| 246 self:broadcast_presence(pr, from); | 247 self:broadcast_presence(pr, from); |
