X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_namesx.cpp;h=2e206003271838f2398479e0ef55c87be0ed08ae;hb=a4f222ee1b05e2fdb2744c1694f9140f8099b009;hp=afbf7a8e263add0c9049fd62671baf945105abfc;hpb=e244cb2c63b1ac1d85bdbb4691f7b1bd940ae804;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_namesx.cpp b/src/modules/m_namesx.cpp index afbf7a8e2..2e2060032 100644 --- a/src/modules/m_namesx.cpp +++ b/src/modules/m_namesx.cpp @@ -71,9 +71,9 @@ class ModuleNamesX : public Module prefixes = memb->chan->GetAllPrefixChars(memb->user); } - void OnSendWhoLine(User* source, const std::vector& params, User* user, std::string& line) CXX11_OVERRIDE + void OnSendWhoLine(User* source, const std::vector& params, User* user, Channel* chan, std::string& line) CXX11_OVERRIDE { - if (!cap.ext.get(source)) + if ((!chan) || (!cap.ext.get(source))) return; // Channel names can contain ":", and ":" as a 'start-of-token' delimiter is @@ -88,17 +88,7 @@ class ModuleNamesX : public Module return; // 352 21DAAAAAB #chan ident localhost insp21.test 21DAAAAAB H@ :0 a - // a b pos - std::string::size_type a = 4 + source->nick.length() + 1; - std::string::size_type b = line.find(' ', a); - if (b == std::string::npos) - return; - - // Try to find this channel - std::string channame = line.substr(a, b-a); - Channel* chan = ServerInstance->FindChan(channame); - if (!chan) - return; + // pos // Don't do anything if the user has only one prefix std::string prefixes = chan->GetAllPrefixChars(user);