From 2a16373ca12e0b4bbe72a487f1620a0d027414be Mon Sep 17 00:00:00 2001 From: Attila Molnar Date: Fri, 26 Feb 2016 15:44:39 +0100 Subject: m_hideoper Reorder checks in OnSendWhoLine() Check if the entire line should be hidden first --- src/modules/m_hideoper.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/modules') diff --git a/src/modules/m_hideoper.cpp b/src/modules/m_hideoper.cpp index 51b00de92..5389ed18d 100644 --- a/src/modules/m_hideoper.cpp +++ b/src/modules/m_hideoper.cpp @@ -108,6 +108,10 @@ class ModuleHideOper : public Module, public Whois::LineEventListener { if (user->IsModeSet(hm) && !source->HasPrivPermission("users/auspex")) { + // Hide the line completely if doing a "/who * o" query + if ((params.size() > 1) && (params[1].find('o') != std::string::npos)) + return MOD_RES_DENY; + // hide the "*" that marks the user as an oper from the /WHO line std::string::size_type spcolon = line.find(" :"); if (spcolon == std::string::npos) @@ -116,9 +120,6 @@ class ModuleHideOper : public Module, public Whois::LineEventListener std::string::size_type pos = line.find('*', sp); if (pos != std::string::npos) line.erase(pos, 1); - // hide the line completely if doing a "/who * o" query - if (params.size() > 1 && params[1].find('o') != std::string::npos) - return MOD_RES_DENY; } return MOD_RES_PASSTHRU; } -- cgit v1.2.3