summaryrefslogtreecommitdiff
path: root/error.c
diff options
context:
space:
mode:
Diffstat (limited to 'error.c')
-rw-r--r--error.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/error.c b/error.c
index 56ea9ae084..f8d2545fa6 100644
--- a/error.c
+++ b/error.c
@@ -599,7 +599,7 @@ rb_bug(const char *fmt, ...)
}
void
-rb_bug_for_fatal_signal(const void *ctx, const char *fmt, ...)
+rb_bug_for_fatal_signal(RETSIGTYPE (*default_sighandler)(int), int sig, const void *ctx, const char *fmt, ...)
{
const char *file = NULL;
int line = 0;
@@ -610,6 +610,8 @@ rb_bug_for_fatal_signal(const void *ctx, const char *fmt, ...)
report_bug(file, line, fmt, ctx);
+ if (default_sighandler) default_sighandler(sig);
+
die();
}