From ceddc607ca3ab1fd695e300e5c5a545f11752d47 Mon Sep 17 00:00:00 2001 From: Azat Khuzhin Date: Sun, 27 Dec 2015 02:48:40 +0300 Subject: [PATCH] test/regress: cover existing signal callbacks and fork() + event_reinit() Regression-for: 88640aa ("event_reinit: make signals works after fork() without evsig_add()") --- test/regress.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/test/regress.c b/test/regress.c index 7d785904..ae548696 100644 --- a/test/regress.c +++ b/test/regress.c @@ -832,7 +832,7 @@ static void test_fork(void) { int status; - struct event ev, sig_ev, usr_ev; + struct event ev, sig_ev, usr_ev, existing_ev; pid_t pid; setup_test("After fork: "); @@ -851,6 +851,9 @@ test_fork(void) evsignal_set(&sig_ev, SIGCHLD, fork_signal_cb, &sig_ev); evsignal_add(&sig_ev, NULL); + evsignal_set(&existing_ev, SIGUSR2, fork_signal_cb, &existing_ev); + evsignal_add(&existing_ev, NULL); + event_base_assert_ok_(current_base); TT_BLATHER(("Before fork")); if ((pid = regress_fork()) == 0) { @@ -870,6 +873,7 @@ test_fork(void) evsignal_set(&usr_ev, SIGUSR1, fork_signal_cb, &usr_ev); evsignal_add(&usr_ev, NULL); raise(SIGUSR1); + raise(SIGUSR2); called = 0; @@ -915,6 +919,7 @@ test_fork(void) evsignal_set(&usr_ev, SIGUSR1, fork_signal_cb, &usr_ev); evsignal_add(&usr_ev, NULL); raise(SIGUSR1); + raise(SIGUSR2); event_dispatch();