X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fcoremods%2Fcore_who.cpp;h=aa19efe97db3f156ce432fa394750e3911c03818;hb=e2b0f3dc9ef4d56c71d7abda13e6139ca092e387;hp=135504b84ce73cb1132908a462b2ead217f7ff62;hpb=85d94c6f49aa83abbb31292c4a7c5c5246d51198;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/coremods/core_who.cpp b/src/coremods/core_who.cpp index 135504b84..aa19efe97 100644 --- a/src/coremods/core_who.cpp +++ b/src/coremods/core_who.cpp @@ -2,15 +2,15 @@ * InspIRCd -- Internet Relay Chat Daemon * * Copyright (C) 2019 linuxdaemon - * Copyright (C) 2017-2019 Sadie Powell - * Copyright (C) 2017-2018 Adam + * Copyright (C) 2018 Adam + * Copyright (C) 2017-2019, 2021 Sadie Powell * Copyright (C) 2013-2014, 2016 Attila Molnar * Copyright (C) 2012, 2019 Robby * Copyright (C) 2009-2010 Daniel De Graaf * Copyright (C) 2009 John Brooks * Copyright (C) 2008 Robin Burchell - * Copyright (C) 2007-2008, 2010 Craig Edwards * Copyright (C) 2007 Dennis Friis + * Copyright (C) 2006-2008, 2010 Craig Edwards * * This file is part of InspIRCd. InspIRCd is free software: you can * redistribute it and/or modify it under the terms of the GNU General Public @@ -391,13 +391,14 @@ void CommandWho::WhoChannel(LocalUser* source, const std::vector& p template void CommandWho::WhoUsers(LocalUser* source, const std::vector& parameters, const T& users, WhoData& data) { + bool source_has_users_auspex = source->HasPrivPermission("users/auspex"); for (typename T::const_iterator iter = users.begin(); iter != users.end(); ++iter) { User* user = GetUser(iter); // Only show users in response to a fuzzy WHO if we can see them normally. bool can_see_normally = user == source || source->SharesChannelWith(user) || !user->IsModeSet(invisiblemode); - if (data.fuzzy_match && !can_see_normally && !source->HasPrivPermission("users/auspex")) + if (data.fuzzy_match && !can_see_normally && !source_has_users_auspex) continue; // Skip the user if it doesn't match the query.