diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2011-03-12 17:43:48 +0100 |
---|---|---|
committer | Blue Swirl <blauwirbel@gmail.com> | 2011-03-13 14:44:20 +0000 |
commit | 9931b2f4c722655d33f886181374498a39c3f489 (patch) | |
tree | c57634dfe7658d5d41484cc88b434a8b9eff0690 | |
parent | 913895ab96507db2bc448d3ae72a409407172d2e (diff) |
unlock iothread during WaitForMultipleObjects
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
-rw-r--r-- | os-win32.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/os-win32.c b/os-win32.c index b214e6a678..c971d928ab 100644 --- a/os-win32.c +++ b/os-win32.c @@ -140,7 +140,9 @@ void os_host_main_loop_wait(int *timeout) int err; WaitObjects *w = &wait_objects; + qemu_mutex_unlock_iothread(); ret = WaitForMultipleObjects(w->num, w->events, FALSE, *timeout); + qemu_mutex_lock_iothread(); if (WAIT_OBJECT_0 + 0 <= ret && ret <= WAIT_OBJECT_0 + w->num - 1) { if (w->func[ret - WAIT_OBJECT_0]) w->func[ret - WAIT_OBJECT_0](w->opaque[ret - WAIT_OBJECT_0]); |