X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_watch.cpp;h=63e34220a4531a48d4910e08a09c65e7810f5224;hb=4132a44396d8fa3d23f87b5cbea5b928aa09769f;hp=6e9a6f9ed716be97ee34dcf1953e8214bccce1f1;hpb=a3e0768758ca68429a29d9c78ce672f2d938c6e7;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_watch.cpp b/src/modules/m_watch.cpp index 6e9a6f9ed..63e34220a 100644 --- a/src/modules/m_watch.cpp +++ b/src/modules/m_watch.cpp @@ -36,7 +36,8 @@ enum RPL_ENDOFWATCHLIST = 607, // RPL_CLEARWATCH = 608, // unused RPL_NOWISAWAY = 609, - ERR_TOOMANYWATCH = 512 + ERR_TOOMANYWATCH = 512, + ERR_INVALIDWATCHNICK = 942 }; class CommandWatch : public SplitCommand @@ -53,9 +54,9 @@ class CommandWatch : public SplitCommand { // The away state should only be sent if the client requests away notifications for a nick but 2.0 always sends them so we do that too if (target->IsAway()) - user->WriteNumeric(RPL_NOWISAWAY, target->nick, target->ident, target->dhost, (unsigned long)target->awaytime, "is away"); + user->WriteNumeric(RPL_NOWISAWAY, target->nick, target->ident, target->GetDisplayedHost(), (unsigned long)target->awaytime, "is away"); else - user->WriteNumeric(RPL_NOWON, target->nick, target->ident, target->dhost, (unsigned long)target->age, "is online"); + user->WriteNumeric(RPL_NOWON, target->nick, target->ident, target->GetDisplayedHost(), (unsigned long)target->age, "is online"); } else if (show_offline) user->WriteNumeric(RPL_NOWOFF, nick, "*", "*", "0", "is offline"); @@ -72,7 +73,7 @@ class CommandWatch : public SplitCommand } else if (result == IRCv3::Monitor::Manager::WR_INVALIDNICK) { - user->WriteNumeric(942, nick, "Invalid nickname"); + user->WriteNumeric(ERR_INVALIDWATCHNICK, nick, "Invalid nickname"); return; } else if (result != IRCv3::Monitor::Manager::WR_OK) @@ -88,7 +89,7 @@ class CommandWatch : public SplitCommand User* target = IRCv3::Monitor::Manager::FindNick(nick); if (target) - user->WriteNumeric(RPL_WATCHOFF, target->nick, target->ident, target->dhost, (unsigned long)target->age, "stopped watching"); + user->WriteNumeric(RPL_WATCHOFF, target->nick, target->ident, target->GetDisplayedHost(), (unsigned long)target->age, "stopped watching"); else user->WriteNumeric(RPL_WATCHOFF, nick, "*", "*", "0", "stopped watching"); } @@ -134,7 +135,7 @@ class CommandWatch : public SplitCommand syntax = "[|->]"; } - CmdResult HandleLocal(const std::vector& parameters, LocalUser* user) + CmdResult HandleLocal(const std::vector& parameters, LocalUser* user) CXX11_OVERRIDE { if (parameters.empty()) { @@ -190,7 +191,7 @@ class ModuleWatch : public Module return; Numeric::Numeric num(numeric); - num.push(nick).push(user->ident).push(user->dhost).push(ConvToStr(shownts)).push(numerictext); + num.push(nick).push(user->ident).push(user->GetDisplayedHost()).push(ConvToStr(shownts)).push(numerictext); for (IRCv3::Monitor::WatcherList::const_iterator i = list->begin(); i != list->end(); ++i) { LocalUser* curr = *i;