mirror of
				https://github.com/matrix-org/synapse.git
				synced 2025-11-04 02:01:03 +01:00 
			
		
		
		
	Return a 404 rather than a 500 on rejoining empty rooms
Filter ourselves out of the server list before checking for an empty remote host list, to fix 500 error Fixes #2141
This commit is contained in:
		
							parent
							
								
									15e8ed874f
								
							
						
					
					
						commit
						f3ef60662f
					
				@ -852,6 +852,14 @@ class RoomMemberMasterHandler(RoomMemberHandler):
 | 
			
		||||
    def _remote_join(self, requester, remote_room_hosts, room_id, user, content):
 | 
			
		||||
        """Implements RoomMemberHandler._remote_join
 | 
			
		||||
        """
 | 
			
		||||
        # filter ourselves out of remote_room_hosts: do_invite_join ignores it
 | 
			
		||||
        # and if it is the only entry we'd like to return a 404 rather than a
 | 
			
		||||
        # 500.
 | 
			
		||||
 | 
			
		||||
        remote_room_hosts = [
 | 
			
		||||
            host for host in remote_room_hosts if host != self.hs.hostname
 | 
			
		||||
        ]
 | 
			
		||||
 | 
			
		||||
        if len(remote_room_hosts) == 0:
 | 
			
		||||
            raise SynapseError(404, "No known servers")
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user