diff options
| author | Wayne Lin <[email protected]> | 2020-12-29 19:36:00 +0800 |
|---|---|---|
| committer | Wayne Lin <[email protected]> | 2020-12-29 19:36:00 +0800 |
| commit | c9892a82bec1f77146fbf7bed6294384dcad62d5 (patch) | |
| tree | 4a119920fa6e9040508383486a6cd432e8ae7e9a /src/ipc.c | |
| parent | 1c4328e5a9f6e1cbb737f975e689fc21ea8f6cca (diff) | |
| parent | 94ba15a80b4856b9654aefa0510465b084a7e459 (diff) | |
Merge branch 'master' of https://github.com/RT-Thread/rt-thread into nuvoton
Diffstat (limited to 'src/ipc.c')
| -rw-r--r-- | src/ipc.c | 11 |
1 files changed, 9 insertions, 2 deletions
@@ -1764,8 +1764,12 @@ rt_err_t rt_mb_recv(rt_mailbox_t mb, rt_ubase_t *value, rt_int32_t timeout) ++ mb->out_offset; if (mb->out_offset >= mb->size) mb->out_offset = 0; + /* decrease message entry */ - mb->entry --; + if(mb->entry > 0) + { + mb->entry --; + } /* resume suspended thread */ if (!rt_list_isempty(&(mb->suspend_sender_thread))) @@ -2439,7 +2443,10 @@ rt_err_t rt_mq_recv(rt_mq_t mq, mq->msg_queue_tail = RT_NULL; /* decrease message entry */ - mq->entry --; + if(mq->entry > 0) + { + mq->entry --; + } /* enable interrupt */ rt_hw_interrupt_enable(temp); |
