mirror of
https://github.com/rustdesk/rustdesk
synced 2026-04-21 13:27:19 +00:00
fix(client): only clear deferred_pending when timer snapshot matches
This commit is contained in:
parent
38e2a07089
commit
88fad10a13
1 changed files with 1 additions and 1 deletions
|
|
@ -211,9 +211,9 @@ pub mod client {
|
|||
std::thread::spawn(move || {
|
||||
std::thread::sleep(std::time::Duration::from_millis(remaining));
|
||||
let mut gs = GRAB_STATE.lock().unwrap_or_else(|e| e.into_inner());
|
||||
gs.deferred_pending = false;
|
||||
// Release only if no new Run has refreshed the grab since.
|
||||
if gs.owner == Some(session_id) && gs.last_grab == snapshot {
|
||||
gs.deferred_pending = false;
|
||||
log::info!("[grab] Wait(0x{:x}): deferred release", session_id);
|
||||
release_remote_keys(&mode);
|
||||
KEYBOARD_HOOKED.store(false, Ordering::SeqCst);
|
||||
|
|
|
|||
Loading…
Reference in a new issue