summaryrefslogtreecommitdiff
path: root/string.c
diff options
context:
space:
mode:
authornagachika <nagachika@ruby-lang.org>2024-07-15 13:40:01 +0900
committernagachika <nagachika@ruby-lang.org>2024-07-15 13:40:01 +0900
commita6b7aad954680e23e7db81d69a7e8e44583bf8b4 (patch)
treec63ac4ccd5ff14dfcd794099b145eb773b5530bf /string.c
parent519d164b6682a8b9fde2b1d5ab7d74f54c4f0224 (diff)
merge revision(s) 7e4b1f8e1935a10df3c41ee60ca0987d73281126: [Backport #20322]
[Bug #20322] Fix rb_enc_interned_str_cstr null encoding The documentation for `rb_enc_interned_str_cstr` notes that `enc` can be a null pointer, but this currently causes a segmentation fault when trying to autoload the encoding. This commit fixes the issue by checking for NULL before calling `rb_enc_autoload`.
Diffstat (limited to 'string.c')
-rw-r--r--string.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/string.c b/string.c
index ed51fa4af7..40b46eee57 100644
--- a/string.c
+++ b/string.c
@@ -11969,7 +11969,7 @@ rb_interned_str_cstr(const char *ptr)
VALUE
rb_enc_interned_str(const char *ptr, long len, rb_encoding *enc)
{
- if (UNLIKELY(rb_enc_autoload_p(enc))) {
+ if (enc != NULL && UNLIKELY(rb_enc_autoload_p(enc))) {
rb_enc_autoload(enc);
}