summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2008-05-11 17:51:07 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2008-05-11 17:51:07 +0000
commit30044376c1ce94fcda65765d448e7cad6b8f3001 (patch)
tree8682592b0fd9cc38bbe3f98f50e4dd481142f575 /src
parent3fd8e7afd7f266b10813a0ec2153758d0c922ef0 (diff)
Show keys to opers correctly
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9705 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r--src/commands/cmd_list.cpp2
-rw-r--r--src/modules/m_safelist.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/commands/cmd_list.cpp b/src/commands/cmd_list.cpp
index 6c95d7e8d..a8c696645 100644
--- a/src/commands/cmd_list.cpp
+++ b/src/commands/cmd_list.cpp
@@ -59,7 +59,7 @@ CmdResult CommandList::Handle (const std::vector<std::string>& parameters, User
}
// if the channel is not private/secret, OR the user is on the channel anyway
- bool n = i->second->HasUser(user);
+ bool n = (i->second->HasUser(user) || IS_OPER(user));
if (!IS_OPER(user) && (i->second->IsModeSet('p')) && (!n))
{
user->WriteNumeric(322, "%s *",user->nick);
diff --git a/src/modules/m_safelist.cpp b/src/modules/m_safelist.cpp
index 0c6f7df81..358d54eda 100644
--- a/src/modules/m_safelist.cpp
+++ b/src/modules/m_safelist.cpp
@@ -198,7 +198,7 @@ class ModuleSafeList : public Module
bool display = (match(chan->name, ld->glob.c_str()) || (*chan->topic && match(chan->topic, ld->glob.c_str())));
if ((users) && (display))
{
- int counter = snprintf(buffer, MAXBUF, "322 %s %s %ld :[+%s] %s",user->nick, chan->name, users, chan->ChanModes(has_user), chan->topic);
+ int counter = snprintf(buffer, MAXBUF, "322 %s %s %ld :[+%s] %s",user->nick, chan->name, users, chan->ChanModes(has_user || IS_OPER(user)), chan->topic);
amount_sent += counter + ServerNameSize;
user->WriteServ(std::string(buffer));
}