diff options
| author | 2006-07-28 10:52:04 +0000 | |
|---|---|---|
| committer | 2006-07-28 10:52:04 +0000 | |
| commit | 7b9fe589320b540db549eb17be46c09778ca021a (patch) | |
| tree | 2078882e0bb3d39f8ec1c95e5e5326a33f6e49a8 /src/message.cpp | |
| parent | Made all the private methods of InspSocket protected instead (diff) | |
Fix to not hide invisible users non-common channels in whois (rfc doesnt state this)
git-svn-id: http://svn.inspircd.org/repository/branches/1_0_stable@4565 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/message.cpp')
| -rw-r--r-- | src/message.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/message.cpp b/src/message.cpp index 765f9a304..dc4367095 100644 --- a/src/message.cpp +++ b/src/message.cpp @@ -402,7 +402,6 @@ std::string chlist(userrec *user,userrec* source) { return lst; } - bool userinvisible = (user->modebits & UM_INVISIBLE); for (std::vector<ucrec*>::const_iterator i = user->chans.begin(); i != user->chans.end(); i++) { if ((((ucrec*)(*i))->channel != NULL) && (((ucrec*)(*i))->channel->name)) @@ -412,9 +411,9 @@ std::string chlist(userrec *user,userrec* source) { // if the channel is NOT private/secret, OR the source user is on the channel, AND the user is not invisible. // if the user is the same as the source, shortcircuit the comparison. - if ((source == user) || ((((!(((ucrec*)(*i))->channel->modes[CM_PRIVATE])) && (!(((ucrec*)(*i))->channel->modes[CM_SECRET])) && (!userinvisible)) || (((ucrec*)(*i))->channel->HasUser(source))))) + if ((source == user) || ((((!(((ucrec*)(*i))->channel->modes[CM_PRIVATE])) && (!(((ucrec*)(*i))->channel->modes[CM_SECRET]))) || (((ucrec*)(*i))->channel->HasUser(source))))) { - lst = lst + std::string(cmode(user,((ucrec*)(*i))->channel)) + std::string(((ucrec*)(*i))->channel->name) + " "; + lst.append(cmode(user,((ucrec*)(*i))->channel)).append(((ucrec*)(*i))->channel->name).append(" "); } } } |
