瀏覽代碼

fix #1858

The channel mode +R used to both prevent joins by unregistered users,
and prevent unregistered users who happened to be joined from speaking.
This changes the behavior so that +R only prevents joins:

1. This allows users who were invited or SAJOIN'ed to speak
2. To restore the old semantics, chanops can set +RM
tags/v2.9.0-rc1
Shivaram Lingamneni 2 年之前
父節點
當前提交
8be8f0f08d
共有 1 個檔案被更改,包括 0 行新增4 行删除
  1. 0
    4
      irc/channel.go

+ 0
- 4
irc/channel.go 查看文件

@@ -1236,10 +1236,6 @@ func (channel *Channel) CanSpeak(client *Client) (bool, modes.Mode) {
1236 1236
 	if channel.flags.HasMode(modes.Moderated) && clientModes.HighestChannelUserMode() == modes.Mode(0) {
1237 1237
 		return false, modes.Moderated
1238 1238
 	}
1239
-	if channel.flags.HasMode(modes.RegisteredOnly) && client.Account() == "" &&
1240
-		clientModes.HighestChannelUserMode() == modes.Mode(0) {
1241
-		return false, modes.RegisteredOnly
1242
-	}
1243 1239
 	if channel.flags.HasMode(modes.RegisteredOnlySpeak) && client.Account() == "" &&
1244 1240
 		clientModes.HighestChannelUserMode() == modes.Mode(0) {
1245 1241
 		return false, modes.RegisteredOnlySpeak

Loading…
取消
儲存