2009/3/5 Neil Jerram <n...@ossau.uklinux.net>: >> Yes, it's an unrelated bug. All of the places that raise errors (and >> so exit non-locally) should exit the critical section first. > >> You're absolutely right. I'll leave this part out, and generate a >> separate patch for it. > > Here's the separate patch...
Looks good, except for the test case: + (pass-if-exception "handler arg is an invalid integer" + exception:out-of-range + (sigaction SIGINT 51)) whereas my bits/signum.h shows: #define SIGUNUSED 31 #define _NSIG 65 /* Biggest signal number + 1 (including real-time signals). */ I presume that in the era of 64-bit CPU's we might start seeing new sigs in the 32-64 range. Or maybe the RT kernels already do ... ? --linas