X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcommon%2Fircchannel.cpp;h=57be4e79c3c64087e0e42cf7b8f2cb822319177e;hb=28b6868290a5281b2e2da17f52514c55df802a30;hp=eb63dd57da467f2cd6fbeda8081d2b683ca3f863;hpb=56607f81246f04db3a0e71c9a8757d7f75d6cfcf;p=quassel.git diff --git a/src/common/ircchannel.cpp b/src/common/ircchannel.cpp index eb63dd57..57be4e79 100644 --- a/src/common/ircchannel.cpp +++ b/src/common/ircchannel.cpp @@ -260,11 +260,15 @@ QVariantMap IrcChannel::initUserModes() const { } void IrcChannel::initSetUserModes(const QVariantMap &usermodes) { - QMapIterator iter(usermodes); - while(iter.hasNext()) { - iter.next(); - setUserModes(iter.key(), iter.value().toString()); + QList users; + QStringList modes; + QVariantMap::const_iterator iter = usermodes.constBegin(); + while(iter != usermodes.constEnd()) { + users << network->newIrcUser(iter.key()); + modes << iter.value().toString(); + iter++; } + joinIrcUsers(users, modes); } void IrcChannel::ircUserDestroyed() {