summaryrefslogtreecommitdiff
path: root/messagepump.c
diff options
context:
space:
mode:
Diffstat (limited to 'messagepump.c')
-rw-r--r--messagepump.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/messagepump.c b/messagepump.c
index d58623ea..77c563f7 100644
--- a/messagepump.c
+++ b/messagepump.c
@@ -106,10 +106,11 @@ messagepump_wait (void) {
int
messagepump_pop (uint32_t *id, uintptr_t *ctx, uint32_t *p1, uint32_t *p2) {
+ mutex_lock (mutex);
if (!mqueue) {
+ mutex_unlock (mutex);
return -1;
}
- mutex_lock (mutex);
*id = mqueue->id;
*ctx = mqueue->ctx;
*p1 = mqueue->p1;