1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* eval.c (rb_eval): fix SEGV at retry in iterator's receiver.

[ruby-dev:23227]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2004-03-30 09:19:06 +00:00
parent 846f087a07
commit 058fd11019
2 changed files with 6 additions and 2 deletions

View file

@ -1,3 +1,8 @@
Tue Mar 30 18:19:00 2004 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_eval): fix SEGV at retry in iterator's receiver.
[ruby-dev:23227]
Mon Mar 29 20:17:16 2004 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (rb_exec): follow older behavior if close-on-exec is not

3
eval.c
View file

@ -2959,7 +2959,7 @@ rb_eval(self, n)
result = prot_tag->retval;
state = 0;
}
else if (state == TAG_RETRY) {
else if (state == TAG_RETRY && ruby_block == &_block) {
state = 0;
goto iter_retry;
}
@ -4537,7 +4537,6 @@ break_jump(retval)
VALUE retval;
{
struct tag *tt = prot_tag;
int yield = Qfalse;
if (retval == Qundef) retval = Qnil;
while (tt) {