sched/sched/sched_waitid.c: Fix an error that occurs when a waiting task has already finished
Summary:
- Fix an error that occurs when a waiting task has already finished.
Impact:
- waitid
Testing:
hifive1-revb:nsh (CONFIG_SCHED_HAVE_PARENT=y, CONFIG_SCHED_CHILD_STATUS=y, CONFIG_SIG_DEFAULT=y)
on QEMU
static int task_main(int argc, char *argv[])
{
return 0;
}
int main(int argc, FAR char *argv[])
{
siginfo_t info;
int pid;
int ret;
pid = task_create("task", 224, 1024, task_main, NULL);
sleep(1);
ret = waitid(P_PID, pid, &info, WEXITED);
assert(ret == 0);
return 0;
}