From 3901730a16891fda55f55fd0eaee83cb99b632f7 Mon Sep 17 00:00:00 2001 From: Yuri Volchkov Date: Wed, 11 Apr 2018 11:07:11 +0200 Subject: [PATCH] Correct handling of mailbox return values on post and recv uk_mbox_mt_post_try and uk_mbox_mt_recv_try return a value smaller than 0 in case of errors. Signed-off-by: Yuri Volchkov --- mailbox.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/mailbox.c b/mailbox.c index 5d04058..9d0546d 100644 --- a/mailbox.c +++ b/mailbox.c @@ -62,12 +62,7 @@ err_t sys_mbox_trypost(sys_mbox_t *mbox, void *msg) { UK_ASSERT(sys_mbox_valid(mbox)); - if (!msg) { /* FIXME? */ - uk_printd(DLVL_WARN, "Ignore posting NULL message"); - return ERR_OK; - } - - if (uk_mbox_mt_post_try(mbox->mbox, msg) != 0) + if (uk_mbox_mt_post_try(mbox->mbox, msg) < 0) return ERR_MEM; return ERR_OK; } @@ -111,8 +106,7 @@ u32_t sys_arch_mbox_tryfetch(sys_mbox_t *mbox, void **msg) { UK_ASSERT(sys_mbox_valid(mbox)); - rmsg = uk_mbox_mt_recv_try(mbox->mbox); - if (!rmsg) + if (uk_mbox_mt_recv_try(mbox->mbox, &rmsg) < 0) return SYS_MBOX_EMPTY; if (msg) -- 2.39.5