diff options
author | Benjamin Jemlich <pcgod@users.sourceforge.net> | 2011-05-20 11:23:20 +0400 |
---|---|---|
committer | Benjamin Jemlich <pcgod@users.sourceforge.net> | 2012-05-31 15:00:15 +0400 |
commit | 0159d50baa94ef094f0776e8b50580b36aea602c (patch) | |
tree | b28769fb0ccc1b39f6448eba99601bda15e02b76 /src/murmur/RPC.cpp | |
parent | c2b7c00e51658e8c67ec7d4e97484ff34792eeab (diff) |
Murmur: Allow temporary user name changes via Ice
Diffstat (limited to 'src/murmur/RPC.cpp')
-rw-r--r-- | src/murmur/RPC.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/murmur/RPC.cpp b/src/murmur/RPC.cpp index a9f4a518b..d6c51e077 100644 --- a/src/murmur/RPC.cpp +++ b/src/murmur/RPC.cpp @@ -52,7 +52,7 @@ If recursion is activated all temporary memberships in related channels will also be cleared. */ -void Server::setUserState(User *pUser, Channel *cChannel, bool mute, bool deaf, bool suppressed, bool prioritySpeaker, const QString &comment) { +void Server::setUserState(User *pUser, Channel *cChannel, bool mute, bool deaf, bool suppressed, bool prioritySpeaker, const QString& name, const QString &comment) { bool changed = false; if (deaf) @@ -87,11 +87,16 @@ void Server::setUserState(User *pUser, Channel *cChannel, bool mute, bool deaf, setInfo(pUser->iId, info); } } + if (name != pUser->qsName) { + changed = true; + mpus.set_name(u8(name)); + } pUser->bDeaf = deaf; pUser->bMute = mute; pUser->bSuppress = suppressed; pUser->bPrioritySpeaker = prioritySpeaker; + pUser->qsName = name; hashAssign(pUser->qsComment, pUser->qbaCommentHash, comment); if (cChannel != pUser->cChannel) { |