mirror of
				https://github.com/ergochat/ergo.git
				synced 2025-10-31 05:47:22 +01:00 
			
		
		
		
	fix an edge case with /NS SASET user always-on true
				
					
				
			If force-nick-equals-account is disabled, then this could cause a client with a non-reserved (or grouped) nick to become always-on. (This can't happen with `/NS SET always-on true` because we check in advance.)
This commit is contained in:
		
							parent
							
								
									d9cab88780
								
							
						
					
					
						commit
						470756cd3e
					
				| @ -330,6 +330,8 @@ func (client *Client) SetAccountSettings(settings AccountSettings) { | ||||
| 	alwaysOn := persistenceEnabled(client.server.Config().Accounts.Multiclient.AlwaysOn, settings.AlwaysOn) | ||||
| 	client.stateMutex.Lock() | ||||
| 	if client.registered { | ||||
| 		// only allow the client to become always-on if their nick equals their account name | ||||
| 		alwaysOn = alwaysOn && client.nick == client.accountName | ||||
| 		autoreplayMissedDisabled = (client.accountSettings.AutoreplayMissed && !settings.AutoreplayMissed) | ||||
| 		becameAlwaysOn = (!client.alwaysOn && alwaysOn) | ||||
| 		client.alwaysOn = alwaysOn | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Shivaram Lingamneni
						Shivaram Lingamneni