diff --git a/sched/signal/sig_dispatch.c b/sched/signal/sig_dispatch.c index 2bffa2f29a..13459a20fa 100644 --- a/sched/signal/sig_dispatch.c +++ b/sched/signal/sig_dispatch.c @@ -193,13 +193,20 @@ static FAR sigpendq_t *nxsig_alloc_pendingsignal(void) ****************************************************************************/ static FAR sigpendq_t * - nxsig_find_pendingsignal(FAR struct task_group_s *group, int signo) +nxsig_find_pendingsignal(FAR struct task_group_s *group, int signo) { FAR sigpendq_t *sigpend = NULL; irqstate_t flags; DEBUGASSERT(group != NULL); + /* Determining whether a signal is reliable or unreliable */ + + if (SIGRTMIN <= signo && signo <= SIGRTMAX) + { + return sigpend; + } + /* Pending signals can be added from interrupt level. */ flags = enter_critical_section();