Red Hat Bugzilla – Bug 175088
Signal handler restoration broken by signal()
Last modified: 2007-11-30 17:07:22 EST
Upstream bugzilla is:
RHEL4 version of the patch attached.
For the record:
When an application sets up its signal using sigaction, and with the SA_SIGINFO
flag, the signal handler has 3 arguments, instead of just one.
If one uses signal(2) to check the existence of a signal handler for that
signal, restoring that handler with signal will mean that only 1 argument will
be passed, thus breaking the application.
Created attachment 121912 [details]
Without this, JRockit hangs when launching Eclipse (which will use gamin). gamin
will override JRockit's signal handler, and not restore it properly.
The patch looks ok to me.
Created attachment 130328 [details]
Test case that demonstrates the problem.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.