/* Yup, is on my list */
watchlist::iterator n = wl->find(nick);
- if (!wl)
- return CMD_FAILURE;
-
if (n != wl->end())
{
if (!n->second.empty())
ext.set(user, wl);
}
- if (wl->size() == MAX_WATCH)
+ if (wl->size() >= MAX_WATCH)
{
user->WriteNumeric(512, "%s %s :Too many WATCH entries", user->nick.c_str(), nick);
return CMD_FAILURE;
}
User* target = ServerInstance->FindNick(nick);
- if (target)
+ if ((target) && (target->registered == REG_ALL))
{
(*wl)[nick] = std::string(target->ident).append(" ").append(target->dhost).append(" ").append(ConvToStr(target->age));
user->WriteNumeric(604, "%s %s %s :is online",user->nick.c_str(), nick, (*wl)[nick].c_str());
{
for (std::deque<User*>::iterator n = x->second.begin(); n != x->second.end(); n++)
{
- (*n)->WriteNumeric(inum, numeric);
+ (*n)->WriteNumeric(inum, (*n)->nick + " " + numeric);
}
}