summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Zhu <peter@peterzhu.ca>2024-04-24 11:04:06 -0400
committerPeter Zhu <peter@peterzhu.ca>2024-04-24 13:10:06 -0400
commit5c32a1503f332dfece617bdf7e7f6a4d5f28977a (patch)
tree461039b17ac1dedf4c276d0d5fab44bb5f4a91e0
parent057b69cfdf633b6b0cf67e8b0621476e7234efa8 (diff)
Change dln_open in dmydln.c to return error instead of raise
-rw-r--r--dmydln.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/dmydln.c b/dmydln.c
index 4b73adc763..84e8a2b381 100644
--- a/dmydln.c
+++ b/dmydln.c
@@ -21,12 +21,11 @@ dln_symbol(void *handle, const char *symbol)
UNREACHABLE_RETURN(NULL);
}
-NORETURN(void *dln_open(const char *library, char *error, size_t size));
void*
dln_open(const char *library, char *error, size_t size)
{
- rb_loaderror("this executable file can't load extension libraries");
-
- UNREACHABLE_RETURN(NULL);
+ static const char *error_str = "this executable file can't load extension libraries";
+ strlcpy(error, error_str, size);
+ return NULL;
}