diff options
Diffstat (limited to 'src/kernel.c')
| -rw-r--r-- | src/kernel.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/kernel.c b/src/kernel.c index 15a80f7c4..3b1ad863f 100644 --- a/src/kernel.c +++ b/src/kernel.c @@ -573,8 +573,10 @@ get_valid_iv_sym(mrb_state *mrb, mrb_value iv_name) mrb_assert(mrb_symbol_p(iv_name) || mrb_string_p(iv_name)); if (mrb_string_p(iv_name)) { - iv_name_id = mrb_intern(mrb, RSTRING_PTR(iv_name), RSTRING_LEN(iv_name)); - valid_iv_name(mrb, iv_name_id, RSTRING_PTR(iv_name), RSTRING_LEN(iv_name)); + char *p = RSTRING_PTR(iv_name); + mrb_int l = RSTRING_LEN(iv_name); + iv_name_id = mrb_intern(mrb, p, l); + valid_iv_name(mrb, iv_name_id, p, l); } else { iv_name_id = mrb_symbol(iv_name); |
