Merge pull request #5884 from fufesou/fix/sciter_reconnect_state
fix, sciter, reconnect, check thread running before the state
This commit is contained in:
		
						commit
						b02f169764
					
				| @ -888,11 +888,13 @@ impl<T: InvokeUiSession> Session<T> { | |||||||
|         // 2. If the connection is established, send `Data::Close`.
 |         // 2. If the connection is established, send `Data::Close`.
 | ||||||
|         // 3. If the connection is disconnected, do nothing.
 |         // 3. If the connection is disconnected, do nothing.
 | ||||||
|         let mut connection_round_state_lock = self.connection_round_state.lock().unwrap(); |         let mut connection_round_state_lock = self.connection_round_state.lock().unwrap(); | ||||||
|  |         if self.thread.lock().unwrap().is_some() { | ||||||
|             match connection_round_state_lock.state { |             match connection_round_state_lock.state { | ||||||
|                 ConnectionState::Connecting => return, |                 ConnectionState::Connecting => return, | ||||||
|                 ConnectionState::Connected => self.send(Data::Close), |                 ConnectionState::Connected => self.send(Data::Close), | ||||||
|                 ConnectionState::Disconnected => {} |                 ConnectionState::Disconnected => {} | ||||||
|             } |             } | ||||||
|  |         } | ||||||
|         let round = connection_round_state_lock.new_round(); |         let round = connection_round_state_lock.new_round(); | ||||||
|         drop(connection_round_state_lock); |         drop(connection_round_state_lock); | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user