summaryrefslogtreecommitdiff
path: root/eval.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-09-18 13:43:42 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-09-18 13:43:42 +0000
commit5f1db6ea963689f4992a92ecd3d90d80df6d2e2e (patch)
tree145cdb7c7e1c16fe338f07fcca36f1dce52b1368 /eval.c
parentdef3aa514abd24d4846f43d0774f370497b7aac2 (diff)
* eval.c (proc_invoke): should update "result" for orphans.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/eval.c b/eval.c
index 7cc68613a3..56f33baabe 100644
--- a/eval.c
+++ b/eval.c
@@ -7035,7 +7035,7 @@ proc_invoke(proc, args, self, klass)
proc_set_safe_level(proc);
result = rb_yield_0(args, self, self!=Qundef?CLASS_OF(self):0, pcall, Qtrue);
}
- else if (pcall || TAG_DST()) {
+ else if (pcall || orphan || TAG_DST()) {
result = prot_tag->retval;
}
POP_TAG();