From c88b4bda88a07bf2b6b02026601ed609b1efbd25 Mon Sep 17 00:00:00 2001 From: Jean Boussier Date: Tue, 30 Jan 2024 17:33:31 +0100 Subject: [PATCH] Include `errno_provenance` in sys_err messages Helps with debugging nasty issues. --- ext/bootsnap/bootsnap.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ext/bootsnap/bootsnap.c b/ext/bootsnap/bootsnap.c index 72c5b06..7526d37 100644 --- a/ext/bootsnap/bootsnap.c +++ b/ext/bootsnap/bootsnap.c @@ -909,6 +909,12 @@ bs_fetch(char * path, VALUE path_v, char * cache_path, VALUE handler, VALUE args return output_data; fail_errno: CLEANUP; + if (errno_provenance) { + exception_message = rb_str_concat( + rb_str_new_cstr(errno_provenance), + rb_str_concat(rb_str_new_cstr(": "), exception_message) + ); + } exception = rb_syserr_new_str(errno, exception_message); rb_exc_raise(exception); __builtin_unreachable();