diff options
-rw-r--r-- | string.c | 16 |
1 files changed, 8 insertions, 8 deletions
@@ -6922,9 +6922,9 @@ sym_to_proc(VALUE sym) VALUE *aryp; if (!sym_proc_cache) { - sym_proc_cache = rb_ary_tmp_new(SYM_PROC_CACHE_SIZE * 2); - rb_gc_register_mark_object(sym_proc_cache); - rb_ary_store(sym_proc_cache, SYM_PROC_CACHE_SIZE*2 - 1, Qnil); + sym_proc_cache = rb_ary_tmp_new(SYM_PROC_CACHE_SIZE * 2); + rb_gc_register_mark_object(sym_proc_cache); + rb_ary_store(sym_proc_cache, SYM_PROC_CACHE_SIZE*2 - 1, Qnil); } id = SYM2ID(sym); @@ -6932,13 +6932,13 @@ sym_to_proc(VALUE sym) aryp = RARRAY_PTR(sym_proc_cache); if (aryp[index] == sym) { - return aryp[index + 1]; + return aryp[index + 1]; } else { - proc = rb_proc_new(sym_call, (VALUE)id); - aryp[index] = sym; - aryp[index + 1] = proc; - return proc; + proc = rb_proc_new(sym_call, (VALUE)id); + aryp[index] = sym; + aryp[index + 1] = proc; + return proc; } } |