From 83fb07fb2c97b9922450979fa4a56f43324317a9 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Sat, 14 Jun 2025 13:32:51 +0200 Subject: [Bug #20998] Check if the string is frozen in rb_str_locktmp() & rb_str_unlocktmp() --- string.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'string.c') diff --git a/string.c b/string.c index d9ffb29b8e..403b8df15f 100644 --- a/string.c +++ b/string.c @@ -3664,6 +3664,7 @@ RUBY_ALIAS_FUNCTION(rb_str_dup_frozen(VALUE str), rb_str_new_frozen, (str)) VALUE rb_str_locktmp(VALUE str) { + rb_check_frozen(str); if (FL_TEST(str, STR_TMPLOCK)) { rb_raise(rb_eRuntimeError, "temporal locking already locked string"); } @@ -3674,6 +3675,7 @@ rb_str_locktmp(VALUE str) VALUE rb_str_unlocktmp(VALUE str) { + rb_check_frozen(str); if (!FL_TEST(str, STR_TMPLOCK)) { rb_raise(rb_eRuntimeError, "temporal unlocking already unlocked string"); } -- cgit v1.2.3