summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2019-10-19 17:55:26 +0900
committerGitHub <[email protected]>2019-10-19 17:55:26 +0900
commitfddefeb7eeaaaa6931f3cfd5f54eed6535715a71 (patch)
tree18ff1180ca54d02eaf257b12dc2ba03d60282005
parent7957f75bd8d0eb84daeb78108fd529021f9354e2 (diff)
parent347729a7c0f46a43fa21c75ba50f73ed604b097b (diff)
downloadmruby-fddefeb7eeaaaa6931f3cfd5f54eed6535715a71.tar.gz
mruby-fddefeb7eeaaaa6931f3cfd5f54eed6535715a71.zip
Merge pull request #4781 from shuujii/fix-that-Module-to_s-may-return-frozen-string
Fix that `Module#to_s` may return frozen string; ref 08eafe2
-rw-r--r--src/class.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/class.c b/src/class.c
index b1c7513de..b8d3d31d8 100644
--- a/src/class.c
+++ b/src/class.c
@@ -1885,7 +1885,8 @@ mrb_mod_to_s(mrb_state *mrb, mrb_value klass)
return mrb_str_cat_lit(mrb, str, ">");
}
else {
- return class_name_str(mrb, mrb_class_ptr(klass));
+ mrb_value str = class_name_str(mrb, mrb_class_ptr(klass));
+ return mrb_frozen_p(mrb_basic_ptr(str)) ? mrb_str_dup(mrb, str) : str;
}
}