Skip to content

Commit 185b0e3

Browse files
authored
fix(tauri-runtime-wry): deadlock when window focus change, closes #4533 (#4539)
1 parent 8e808fe commit 185b0e3

2 files changed

Lines changed: 9 additions & 3 deletions

File tree

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"tauri-runtime-wry": patch
3+
---
4+
5+
Fixes a deadlock when the window focus change on Windows.

core/tauri-runtime-wry/src/lib.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2403,13 +2403,14 @@ fn handle_user_message<T: UserEvent>(
24032403
}
24042404
}
24052405
WebviewMessage::WebviewEvent(event) => {
2406-
if let Some(window) = windows
2406+
let window_event_listeners = windows
24072407
.lock()
24082408
.expect("poisoned webview collection")
24092409
.get(&id)
2410-
{
2410+
.map(|w| w.window_event_listeners.clone());
2411+
if let Some(window_event_listeners) = window_event_listeners {
24112412
if let Some(event) = WindowEventWrapper::from(&event).0 {
2412-
let listeners = window.window_event_listeners.lock().unwrap();
2413+
let listeners = window_event_listeners.lock().unwrap();
24132414
let handlers = listeners.values();
24142415
for handler in handlers {
24152416
handler(&event);

0 commit comments

Comments
 (0)