mirror of
https://github.com/ergochat/ergo.git
synced 2024-11-29 07:29:31 +01:00
make channel founder unkickable
This commit is contained in:
parent
f5e9fd3e77
commit
32bb10f6c6
@ -553,9 +553,12 @@ func (channel *Channel) ClientHasPrivsOver(client *Client, target *Client) bool
|
|||||||
targetModes := channel.members[target]
|
targetModes := channel.members[target]
|
||||||
channel.stateMutex.RUnlock()
|
channel.stateMutex.RUnlock()
|
||||||
|
|
||||||
if founder != "" && founder == client.Account() {
|
if founder != "" {
|
||||||
// #950: founder can kick or whatever without actually having the +q mode
|
if founder == client.Account() {
|
||||||
return true
|
return true // #950: founder can take any privileged action without actually having +q
|
||||||
|
} else if founder == target.Account() {
|
||||||
|
return false // conversely, only the founder can kick the founder
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return channelUserModeHasPrivsOver(clientModes.HighestChannelUserMode(), targetModes.HighestChannelUserMode())
|
return channelUserModeHasPrivsOver(clientModes.HighestChannelUserMode(), targetModes.HighestChannelUserMode())
|
||||||
|
Loading…
Reference in New Issue
Block a user