I believe there is a bug in signal.c, function "stackOverflowDetector()". The "sig" argument should be used to clear the signal, since it could be either SIGSEGV or SIGBUS. -dougy
*************** *** 431,439 **** * and then go back in KaffePThread_detectStackBoundaries() using the old stack. */ static void NONRETURNING ! stackOverflowDetector(SIGNAL_ARGS(sig UNUSED, sc)) { ! unblockSignal(SIGSEGV); JTHREAD_LONGJMP(outOfLoop, 1); } --- 437,445 ---- * and then go back in KaffePThread_detectStackBoundaries() using the old stack. */ static void NONRETURNING ! stackOverflowDetector(SIGNAL_ARGS(sig , sc)) { ! unblockSignal(sig); JTHREAD_LONGJMP(outOfLoop, 1); } *************** _______________________________________________ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe