Open GoogleCodeExporter opened 9 years ago
The problem is that returning is safer than re-throwing the signal. Either you
know that you should re-throw the signal because it came via kill or similar,
or you can end up triggering some signal handler loops.
The authoritative information lies in SI_FROMUSER (info->si_code <= 0). But the
problem is that if you are in a handler registered via old-style signal, you
don't have |info|, so you don't have the piece of information that tells you
whether you should or should not re-trigger manually the signal after
reinstalling. So, in practice, there isn't really anything too much you can do
here. And speculating on the nature of the signal (e.g., assuming that SIGABRT
comes always from the kernel) is unreliable.
Original comment by primi...@chromium.org
on 16 Jul 2015 at 11:30
>> you can end up triggering some signal handler loops.
I don't get it, the if block can be executed at most once. Is there any
scenario you have in mind where there can be a loop?
Original comment by sy...@google.com
on 20 Jul 2015 at 6:17
Original issue reported on code.google.com by
sy...@google.com
on 15 Jul 2015 at 6:10