Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions sched/signal/sig_dispatch.c
Original file line number Diff line number Diff line change
Expand Up @@ -372,6 +372,15 @@ int nxsig_tcbdispatch(FAR struct tcb_s *stcb, siginfo_t *info)
if (masked == 1)
#endif
{
#ifdef CONFIG_LIB_SYSCALL
/* If the thread is in syscall, schedule the sigaction here */

if ((stcb->flags & TCB_FLAG_SYSCALL) != 0)
{
nxsig_add_pendingsignal(stcb, info);
}
#endif

/* Check if the task is waiting for this pending signal. If so, then
* unblock it. This must be performed in a critical section because
* signals can be queued from the interrupt level.
Expand Down