mirror of
https://github.com/ergochat/ergo.git
synced 2024-12-22 18:52:41 +01:00
fix #682
This commit is contained in:
parent
0880f20f4b
commit
08f351060e
@ -2564,6 +2564,8 @@ func userHandler(server *Server, client *Client, msg ircmsg.IrcMessage, rb *Resp
|
|||||||
func userhostHandler(server *Server, client *Client, msg ircmsg.IrcMessage, rb *ResponseBuffer) bool {
|
func userhostHandler(server *Server, client *Client, msg ircmsg.IrcMessage, rb *ResponseBuffer) bool {
|
||||||
returnedClients := make(ClientSet)
|
returnedClients := make(ClientSet)
|
||||||
|
|
||||||
|
var tl utils.TokenLineBuilder
|
||||||
|
tl.Initialize(400, " ")
|
||||||
for i, nickname := range msg.Params {
|
for i, nickname := range msg.Params {
|
||||||
if i >= 10 {
|
if i >= 10 {
|
||||||
break
|
break
|
||||||
@ -2571,7 +2573,6 @@ func userhostHandler(server *Server, client *Client, msg ircmsg.IrcMessage, rb *
|
|||||||
|
|
||||||
target := server.clients.Get(nickname)
|
target := server.clients.Get(nickname)
|
||||||
if target == nil {
|
if target == nil {
|
||||||
rb.Add(nil, client.server.name, ERR_NOSUCHNICK, client.nick, utils.SafeErrorParam(nickname), client.t("No such nick"))
|
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
// to prevent returning multiple results for a single nick
|
// to prevent returning multiple results for a single nick
|
||||||
@ -2590,7 +2591,17 @@ func userhostHandler(server *Server, client *Client, msg ircmsg.IrcMessage, rb *
|
|||||||
} else {
|
} else {
|
||||||
isAway = "+"
|
isAway = "+"
|
||||||
}
|
}
|
||||||
rb.Add(nil, client.server.name, RPL_USERHOST, client.nick, fmt.Sprintf("%s%s=%s%s@%s", target.nick, isOper, isAway, target.username, target.hostname))
|
details := target.Details()
|
||||||
|
tl.Add(fmt.Sprintf("%s%s=%s%s@%s", details.nick, isOper, isAway, details.username, details.hostname))
|
||||||
|
}
|
||||||
|
|
||||||
|
lines := tl.Lines()
|
||||||
|
if lines == nil {
|
||||||
|
lines = []string{""}
|
||||||
|
}
|
||||||
|
nick := client.Nick()
|
||||||
|
for _, line := range lines {
|
||||||
|
rb.Add(nil, client.server.name, RPL_USERHOST, nick, line)
|
||||||
}
|
}
|
||||||
|
|
||||||
return false
|
return false
|
||||||
|
Loading…
Reference in New Issue
Block a user