Skip to content

Commit 618e70f

Browse files
committed
Don't signal an error for really early signals
I'm getting annoyed about the repeated ABRT whenever there's some early issue. This also means that SIGWINCH and such won't cause an error and halt a build.
1 parent 08d76c3 commit 618e70f

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/core/mpPackage.cc

+5-4
Original file line numberDiff line numberDiff line change
@@ -494,10 +494,11 @@ void posix_signal_interrupt(int sig) {
494494
if (_sym_posix_interrupt->fboundp())
495495
core::eval::funcall(_sym_posix_interrupt->symbolFunction(),
496496
core::clasp_make_fixnum(sig));
497-
else
498-
core::cl__cerror(core::SimpleBaseString_O::make("Ignore signal"),
499-
core::SimpleBaseString_O::make("Received POSIX signal ~d"),
500-
core::Cons_O::createList(core::clasp_make_fixnum(sig)));
497+
// If it's too early to call into Lisp, we do nothing
498+
// and return. This makes it so that, for example, an ABRT signal
499+
// will not be handled and thus terminate the process, rather than
500+
// be "handled" so a few dozen ABRTs need to be sent to actually
501+
// kill the process.
501502
multipleValues.loadFromTemp(nvals, mv_temp);
502503
}
503504

0 commit comments

Comments
 (0)