diff options
Diffstat (limited to 'libcacard/event.c')
-rw-r--r-- | libcacard/event.c | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/libcacard/event.c b/libcacard/event.c index a2e6c7dcd0..4c551e4e38 100644 --- a/libcacard/event.c +++ b/libcacard/event.c @@ -6,7 +6,6 @@ */ #include "qemu-common.h" -#include "qemu/thread.h" #include "vcard.h" #include "vreader.h" @@ -43,13 +42,11 @@ vevent_delete(VEvent *vevent) static VEvent *vevent_queue_head; static VEvent *vevent_queue_tail; -static QemuMutex vevent_queue_lock; -static QemuCond vevent_queue_condition; +static CompatGMutex vevent_queue_lock; +static CompatGCond vevent_queue_condition; void vevent_queue_init(void) { - qemu_mutex_init(&vevent_queue_lock); - qemu_cond_init(&vevent_queue_condition); vevent_queue_head = vevent_queue_tail = NULL; } @@ -57,7 +54,7 @@ void vevent_queue_vevent(VEvent *vevent) { vevent->next = NULL; - qemu_mutex_lock(&vevent_queue_lock); + g_mutex_lock(&vevent_queue_lock); if (vevent_queue_head) { assert(vevent_queue_tail); vevent_queue_tail->next = vevent; @@ -65,8 +62,8 @@ vevent_queue_vevent(VEvent *vevent) vevent_queue_head = vevent; } vevent_queue_tail = vevent; - qemu_cond_signal(&vevent_queue_condition); - qemu_mutex_unlock(&vevent_queue_lock); + g_cond_signal(&vevent_queue_condition); + g_mutex_unlock(&vevent_queue_lock); } /* must have lock */ @@ -86,11 +83,11 @@ VEvent *vevent_wait_next_vevent(void) { VEvent *vevent; - qemu_mutex_lock(&vevent_queue_lock); + g_mutex_lock(&vevent_queue_lock); while ((vevent = vevent_dequeue_vevent()) == NULL) { - qemu_cond_wait(&vevent_queue_condition, &vevent_queue_lock); + g_cond_wait(&vevent_queue_condition, &vevent_queue_lock); } - qemu_mutex_unlock(&vevent_queue_lock); + g_mutex_unlock(&vevent_queue_lock); return vevent; } @@ -98,9 +95,9 @@ VEvent *vevent_get_next_vevent(void) { VEvent *vevent; - qemu_mutex_lock(&vevent_queue_lock); + g_mutex_lock(&vevent_queue_lock); vevent = vevent_dequeue_vevent(); - qemu_mutex_unlock(&vevent_queue_lock); + g_mutex_unlock(&vevent_queue_lock); return vevent; } |