fix(http): move hup check after read/write check
This commit is contained in:
		
				
					committed by
					
						 Sean McArthur
						Sean McArthur
					
				
			
			
				
	
			
			
			
						parent
						
							02f01765ee
						
					
				
				
					commit
					359493f973
				
			| @@ -595,13 +595,6 @@ impl<K: Key, T: Transport, H: MessageHandler<T>> Conn<K, T, H> { | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         if events.is_hup() { | ||||
|             trace!("Conn::ready got hangup"); | ||||
|             let _ = scope.deregister(&self.0.transport); | ||||
|             self.on_remove(); | ||||
|             return ReadyResult::Done(None); | ||||
|         } | ||||
|  | ||||
|         // if the user had an io interest, but the transport was blocked differently, | ||||
|         // the event needs to be translated to what the user was actually expecting. | ||||
|         // | ||||
| @@ -642,6 +635,13 @@ impl<K: Key, T: Transport, H: MessageHandler<T>> Conn<K, T, H> { | ||||
|             self.0.on_writable(scope); | ||||
|         } | ||||
|  | ||||
|         if events.is_hup() { | ||||
|             trace!("Conn::ready got hangup"); | ||||
|             let _ = scope.deregister(&self.0.transport); | ||||
|             self.on_remove(); | ||||
|             return ReadyResult::Done(None); | ||||
|         } | ||||
|  | ||||
|         let mut events = match self.0.register() { | ||||
|             Reg::Read => EventSet::readable(), | ||||
|             Reg::Write => EventSet::writable(), | ||||
|   | ||||
		Reference in New Issue
	
	Block a user