diff options
Diffstat (limited to 't/helper/test-sigchain.c')
-rw-r--r-- | t/helper/test-sigchain.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/t/helper/test-sigchain.c b/t/helper/test-sigchain.c new file mode 100644 index 0000000..2d5ecf7 --- /dev/null +++ b/t/helper/test-sigchain.c @@ -0,0 +1,23 @@ +#include "test-tool.h" +#include "sigchain.h" + +#define X(f) \ +static void f(int sig) { \ + puts(#f); \ + fflush(stdout); \ + sigchain_pop(sig); \ + raise(sig); \ +} +X(one) +X(two) +X(three) +#undef X + +int cmd__sigchain(int argc UNUSED, const char **argv UNUSED) +{ + sigchain_push(SIGTERM, one); + sigchain_push(SIGTERM, two); + sigchain_push(SIGTERM, three); + raise(SIGTERM); + return 0; +} |