From 06c466896efa1462b9a206d0d6d435296af59766 Mon Sep 17 00:00:00 2001 From: James Lu Date: Sat, 15 Aug 2015 20:14:36 -0700 Subject: [PATCH] ts6: fix prefixmodes not being updated in sjoin --- protocols/ts6.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/protocols/ts6.py b/protocols/ts6.py index 0e8c161..9124a35 100644 --- a/protocols/ts6.py +++ b/protocols/ts6.py @@ -89,6 +89,7 @@ def sjoinServer(irc, server, channel, users, ts=None): log.debug("sending SJOIN to %s%s with ts %s (that's %r)", channel, irc.name, ts, time.strftime("%c", time.localtime(ts))) modes = [m for m in irc.channels[channel].modes if m[0] not in irc.cmodes['*A']] + changedmodes = [] while users[:10]: uids = [] namelist = [] @@ -101,6 +102,7 @@ def sjoinServer(irc, server, channel, users, ts=None): pr = irc.prefixmodes.get(prefix) if pr: prefixchars += pr + changedmodes.append(('+%s' % prefix, user)) namelist.append(prefixchars+user) uids.append(user) try: @@ -113,7 +115,7 @@ def sjoinServer(irc, server, channel, users, ts=None): ts=ts, users=namelist, channel=channel, modes=utils.joinModes(modes))) irc.channels[channel].users.update(uids) - utils.applyModes(irc, channel, modes) + utils.applyModes(irc, channel, changedmodes) def _sendModes(irc, numeric, target, modes, ts=None): utils.applyModes(irc, target, modes)