[mempool] reset the thread->error before suspending thread
Time out result and other errors is recorded in thread->error. Dirty error will screw up the error handling code after the thread has been wake up.
This commit is contained in:
parent
3b6198275b
commit
a78e42a7c8
|
@ -356,6 +356,8 @@ void *rt_mp_alloc(rt_mp_t mp, rt_int32_t time)
|
||||||
/* get current thread */
|
/* get current thread */
|
||||||
thread = rt_thread_self();
|
thread = rt_thread_self();
|
||||||
|
|
||||||
|
thread->error = RT_EOK;
|
||||||
|
|
||||||
/* need suspend thread */
|
/* need suspend thread */
|
||||||
rt_thread_suspend(thread);
|
rt_thread_suspend(thread);
|
||||||
rt_list_insert_after(&(mp->suspend_thread), &(thread->tlist));
|
rt_list_insert_after(&(mp->suspend_thread), &(thread->tlist));
|
||||||
|
|
Loading…
Reference in New Issue