mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-13 20:49:02 -04:00
Fix crashbug when /who'ing people who arent on a channel (chan->GetPrefixChar() when chan == NULL is bad, mmk)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5153 e03df62e-2008-0410-955e-edbf42e46eb7
This commit is contained in:
parent
90b37c2009
commit
2f7aa87379
@ -175,6 +175,8 @@ CmdResult cmd_who::Handle (const char** parameters, int pcnt, userrec *user)
|
||||
wholine = wholine + getlastchanname(oper) + " " + oper->ident + " " + (opt_showrealhost ? oper->host : oper->dhost) + " " +
|
||||
oper->server + " " + oper->nick + " ";
|
||||
|
||||
ch = ServerInstance->FindChan(getlastchanname(oper));
|
||||
|
||||
/* away? */
|
||||
if (*oper->awaymsg)
|
||||
{
|
||||
@ -191,7 +193,7 @@ CmdResult cmd_who::Handle (const char** parameters, int pcnt, userrec *user)
|
||||
wholine.append("*");
|
||||
}
|
||||
|
||||
wholine = wholine + ch->GetPrefixChar(oper) + " :0 " + oper->fullname;
|
||||
wholine = wholine + (ch ? ch->GetPrefixChar(oper) : "") + " :0 " + oper->fullname;
|
||||
whoresults.push_back(wholine);
|
||||
}
|
||||
}
|
||||
@ -207,6 +209,8 @@ CmdResult cmd_who::Handle (const char** parameters, int pcnt, userrec *user)
|
||||
wholine = wholine + getlastchanname(i->second) + " " + i->second->ident + " " + (opt_showrealhost ? i->second->host : i->second->dhost) + " " +
|
||||
i->second->server + " " + i->second->nick + " ";
|
||||
|
||||
ch = ServerInstance->FindChan(getlastchanname(i->second));
|
||||
|
||||
/* away? */
|
||||
if (*(i->second)->awaymsg)
|
||||
{
|
||||
@ -223,7 +227,7 @@ CmdResult cmd_who::Handle (const char** parameters, int pcnt, userrec *user)
|
||||
wholine.append("*");
|
||||
}
|
||||
|
||||
wholine = wholine + ch->GetPrefixChar(i->second) + " :0 " + i->second->fullname;
|
||||
wholine = wholine + (ch ? ch->GetPrefixChar(i->second) : "") + " :0 " + i->second->fullname;
|
||||
whoresults.push_back(wholine);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user