提交 a0e62f66 编写于 作者: L liuxinaliang

[net][lwip] fix assert in the sys_arch_mbox_fetch function when close socket

上级 c2322353
...@@ -498,14 +498,10 @@ u32_t sys_arch_mbox_fetch(sys_mbox_t *mbox, void **msg, u32_t timeout) ...@@ -498,14 +498,10 @@ u32_t sys_arch_mbox_fetch(sys_mbox_t *mbox, void **msg, u32_t timeout)
} }
ret = rt_mb_recv(*mbox, (rt_ubase_t *)msg, t); ret = rt_mb_recv(*mbox, (rt_ubase_t *)msg, t);
if(ret == -RT_ETIMEOUT) if(ret != RT_EOK)
{ {
return SYS_ARCH_TIMEOUT; return SYS_ARCH_TIMEOUT;
} }
else
{
LWIP_ASSERT("rt_mb_recv returned with error!", ret == RT_EOK);
}
/* get elapse msecond */ /* get elapse msecond */
tick = rt_tick_get() - tick; tick = rt_tick_get() - tick;
......
...@@ -509,12 +509,9 @@ u32_t sys_arch_mbox_fetch(sys_mbox_t *mbox, void **msg, u32_t timeout) ...@@ -509,12 +509,9 @@ u32_t sys_arch_mbox_fetch(sys_mbox_t *mbox, void **msg, u32_t timeout)
} }
ret = rt_mb_recv(*mbox, (rt_ubase_t *)msg, t); ret = rt_mb_recv(*mbox, (rt_ubase_t *)msg, t);
if(ret != RT_EOK)
if(ret == -RT_ETIMEOUT)
return SYS_ARCH_TIMEOUT;
else
{ {
LWIP_ASSERT("rt_mb_recv returned with error!", ret == RT_EOK); return SYS_ARCH_TIMEOUT;
} }
/* get elapse msecond */ /* get elapse msecond */
......
...@@ -523,12 +523,9 @@ u32_t sys_arch_mbox_fetch(sys_mbox_t *mbox, void **msg, u32_t timeout) ...@@ -523,12 +523,9 @@ u32_t sys_arch_mbox_fetch(sys_mbox_t *mbox, void **msg, u32_t timeout)
} }
ret = rt_mb_recv(*mbox, (rt_ubase_t *)msg, t); ret = rt_mb_recv(*mbox, (rt_ubase_t *)msg, t);
if(ret != RT_EOK)
if(ret == -RT_ETIMEOUT)
return SYS_ARCH_TIMEOUT;
else
{ {
LWIP_ASSERT("rt_mb_recv returned with error!", ret == RT_EOK); return SYS_ARCH_TIMEOUT;
} }
/* get elapse msecond */ /* get elapse msecond */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册