summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/symbol.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/symbol.c b/src/symbol.c
index 9500e6e36..4d6c20e68 100644
--- a/src/symbol.c
+++ b/src/symbol.c
@@ -325,6 +325,10 @@ mrb_sym_to_s(mrb_state *mrb, mrb_value sym)
mrb_int len;
p = mrb_sym2name_len(mrb, id, &len);
+#ifndef MRB_ENABLE_SYMBOLL_ALL
+ if (p == mrb->symbuf)
+ return mrb_str_new(mrb, p, len);
+#endif
return mrb_str_new_static(mrb, p, len);
}