aboutsummaryrefslogtreecommitdiffstats
path: root/proc.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-06-28 23:45:55 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-06-28 23:45:55 +0000
commit620ca670e12ee7f754af7a8c30ef08ad7147dcd2 (patch)
treea0c7dedaaa6526d8ec61196b357415256259f24c /proc.c
parent4bca3851403aabdc4683c27e6c798530dd657c32 (diff)
downloadruby-620ca670e12ee7f754af7a8c30ef08ad7147dcd2.tar.gz
Passed block symbol to proc
* proc.c (passed_block): convert passed block symbol to proc. based on the patch by Daisuke Sato in [ruby-dev:49695]. [Bug #12531] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'proc.c')
-rw-r--r--proc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/proc.c b/proc.c
index 850de22634..29a857f4a4 100644
--- a/proc.c
+++ b/proc.c
@@ -820,6 +820,9 @@ passed_block(VALUE pass_procval)
{
if (!NIL_P(pass_procval)) {
rb_proc_t *pass_proc;
+ if (SYMBOL_P(pass_procval)) {
+ pass_procval = sym_proc_new(rb_cProc, pass_procval);
+ }
GetProcPtr(pass_procval, pass_proc);
return &pass_proc->block;
}