To recap the essential but subtle difference..
378.x
380.x
Doing the equivalent in 380.x but get more info about the signal (for their debugging purpose?) but causes the leak in the process somehow..
378.x
do {
ret = sigwait(&sigset, &state);
} while (ret); 380.x
do {
state = info.si_signo;
ret = sigwaitinfo(&sigset, &info);
} while (ret == -1); state = info.si_signo;
Doing the equivalent in 380.x but get more info about the signal (for their debugging purpose?) but causes the leak in the process somehow..