Vincent Bernat <bernat@luffy.cx> (and Willy) fixed SIGCHLD handler
re-registering issue.
thread_signal_handler is given as first parameter the master thread.
This thread is destroyed and reallocated on reload but the signal
handler was not recreated and therefore was still using the old master
thread. Usually, there is no change because master thread is
reallocated at the same place.
/* Reload the conf */
mem_allocated = 0;
check_signal_init();
+ signal_set(SIGCHLD, thread_child_handler, master);
start_check();
/* free backup data */
/* Reload the conf */
mem_allocated = 0;
vrrp_signal_init();
+ signal_set(SIGCHLD, thread_child_handler, master);
start_vrrp();
/* free backup data */