mirror of
https://github.com/ergochat/ergo.git
synced 2024-11-10 22:19:31 +01:00
WHOIS: Use inbuilt functionality to force trailing, as suggested by @vegax87
This commit is contained in:
parent
ccae0cf7cd
commit
c8b5fb65e0
@ -535,10 +535,14 @@ func (client *Client) SendFromClient(msgid string, from *Client, tags *map[strin
|
|||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
// these are all the output commands that MUST have their last param be a trailing
|
// these are all the output commands that MUST have their last param be a trailing.
|
||||||
|
// this is needed because silly clients like to treat trailing as separate from the
|
||||||
|
// other params in messages.
|
||||||
commandsThatMustUseTrailing = map[string]bool{
|
commandsThatMustUseTrailing = map[string]bool{
|
||||||
"PRIVMSG": true,
|
"PRIVMSG": true,
|
||||||
"NOTICE": true,
|
"NOTICE": true,
|
||||||
|
|
||||||
|
RPL_WHOISCHANNELS: true,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -1093,8 +1093,7 @@ func (client *Client) getWhoisOf(target *Client) {
|
|||||||
|
|
||||||
whoischannels := client.WhoisChannelsNames(target)
|
whoischannels := client.WhoisChannelsNames(target)
|
||||||
if whoischannels != nil {
|
if whoischannels != nil {
|
||||||
// the dodgy +" " hack here is to work around some silly clients that don't parse trailing params correctly. This forces last param to be a trailing always.
|
client.Send(nil, client.server.name, RPL_WHOISCHANNELS, client.nick, target.nick, strings.Join(whoischannels, " "))
|
||||||
client.Send(nil, client.server.name, RPL_WHOISCHANNELS, client.nick, target.nick, strings.Join(whoischannels, " ")+" ")
|
|
||||||
}
|
}
|
||||||
if target.class != nil {
|
if target.class != nil {
|
||||||
client.Send(nil, client.server.name, RPL_WHOISOPERATOR, client.nick, target.nick, target.whoisLine)
|
client.Send(nil, client.server.name, RPL_WHOISOPERATOR, client.nick, target.nick, target.whoisLine)
|
||||||
|
Loading…
Reference in New Issue
Block a user