MCPcopy Create free account
hub / github.com/RT-Thread/rt-thread / sigqueue_discard_sigset

Function sigqueue_discard_sigset

components/lwp/lwp_signal.c:329–341  ·  view source on GitHub ↗

* Discard all the queuing signals in sigset */

Source from the content-addressed store, hash-verified

327 * Discard all the queuing signals in sigset
328 */
329static void sigqueue_discard_sigset(lwp_sigqueue_t sigqueue, lwp_sigset_t *sigset)
330{
331 lwp_siginfo_t queuing_si;
332 lwp_sigset_t mask;
333 int signo;
334
335 _signotsets(&mask, sigset);
336 while ((signo = sigqueue_peek(sigqueue, &mask)) != 0)
337 {
338 queuing_si = sigqueue_dequeue(sigqueue, signo);
339 siginfo_delete(queuing_si);
340 }
341}
342
343/* assuming that (void *) is compatible to long at length */
344RT_STATIC_ASSERT(lp_width_same, sizeof(void *) == sizeof(long));

Callers 1

Calls 4

_signotsetsFunction · 0.85
sigqueue_peekFunction · 0.85
sigqueue_dequeueFunction · 0.85
siginfo_deleteFunction · 0.85

Tested by

no test coverage detected