Merge pull request #5884 from fufesou/fix/sciter_reconnect_state

fix, sciter, reconnect, check thread running before the state
This commit is contained in:
RustDesk 2023-10-02 20:40:15 +08:00 committed by GitHub
commit b02f169764
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -888,10 +888,12 @@ impl<T: InvokeUiSession> Session<T> {
// 2. If the connection is established, send `Data::Close`.
// 3. If the connection is disconnected, do nothing.
let mut connection_round_state_lock = self.connection_round_state.lock().unwrap();
match connection_round_state_lock.state {
ConnectionState::Connecting => return,
ConnectionState::Connected => self.send(Data::Close),
ConnectionState::Disconnected => {}
if self.thread.lock().unwrap().is_some() {
match connection_round_state_lock.state {
ConnectionState::Connecting => return,
ConnectionState::Connected => self.send(Data::Close),
ConnectionState::Disconnected => {}
}
}
let round = connection_round_state_lock.new_round();
drop(connection_round_state_lock);