mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2025-03-06 02:25:25 +08:00
Merge pull request #4199 from mysterywolf/m--
[kernel] 对IPC中减减进行摸排,防止出现减出一个很大的数
This commit is contained in:
commit
7d11aa24a2
@ -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 */
|
||||
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 */
|
||||
if(mq->entry > 0)
|
||||
{
|
||||
mq->entry --;
|
||||
}
|
||||
|
||||
/* enable interrupt */
|
||||
rt_hw_interrupt_enable(temp);
|
||||
|
Loading…
x
Reference in New Issue
Block a user