summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCYFS <[email protected]>2026-07-14 11:10:00 +0800
committerRbb666 <[email protected]>2026-10-28 14:44:20 +0800
commit25dcad752cc8d0b06942cbfec94e1a8a1d0b2d50 (patch)
treefffd9b66572deedaf084a9f492f70b9636343536
parent90e06f354b3735615bd21b1cba93be79095bc548 (diff)
utest: skip signal zero with musl
-rw-r--r--src/utest/signal_tc.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/utest/signal_tc.c b/src/utest/signal_tc.c
index eb7001e49e..7ace71d603 100644
--- a/src/utest/signal_tc.c
+++ b/src/utest/signal_tc.c
@@ -134,6 +134,12 @@
static volatile int receive_sig = 0;
static struct rt_semaphore _received_signal;
+#ifdef RT_USING_MUSLLIBC
+#define UTEST_SIGNAL_MIN 1
+#else
+#define UTEST_SIGNAL_MIN 0
+#endif
+
void sig_handle_default(int signo)
{
receive_sig = signo;
@@ -145,7 +151,7 @@ static void rt_signal_install_test(void)
rt_sighandler_t result;
/* case 1:rt_signal_install, install all available signal. */
- for (signo = 0; signo < RT_SIG_MAX; signo++)
+ for (signo = UTEST_SIGNAL_MIN; signo < RT_SIG_MAX; signo++)
{
result = rt_signal_install(signo, sig_handle_default);
uassert_true(result != SIG_ERR);
@@ -163,7 +169,7 @@ static void rt_signal_unmask_test(void)
rt_sighandler_t result;
/* case 3:rt_signal_mask/unmask, one thread self, install and unmask, then kill, should received. */
- for (signo = 0; signo < RT_SIG_MAX; signo++)
+ for (signo = UTEST_SIGNAL_MIN; signo < RT_SIG_MAX; signo++)
{
receive_sig = -1;
result = rt_signal_install(signo, sig_handle_default);
@@ -183,7 +189,7 @@ static void rt_signal_mask_test(void)
rt_sighandler_t result;
/* case 4:rt_signal_mask/unmask, one thread self, install and unmask and mask, then kill, should can't received. */
- for (signo = 0; signo < RT_SIG_MAX; signo++)
+ for (signo = UTEST_SIGNAL_MIN; signo < RT_SIG_MAX; signo++)
{
receive_sig = -1;
result = rt_signal_install(signo, sig_handle_default);
@@ -206,7 +212,7 @@ static void rt_signal_kill_test(void)
rt_sighandler_t result;
/* case 7:rt_signal_kill, kill legal thread, return 0; */
- for (signo = 0; signo < RT_SIG_MAX; signo++)
+ for (signo = UTEST_SIGNAL_MIN; signo < RT_SIG_MAX; signo++)
{
receive_sig = -1;
result = rt_signal_install(signo, sig_handle_default);