diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-02-17 14:29:20 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-02-17 14:29:20 +0000 |
commit | 02b8414d98c0cc66b7b3870c26a59dd8c5600cf4 (patch) | |
tree | a9f66478d496707fd4df055cdec51470e4bfb9ad /eval.c | |
parent | 52dca163848ad38fd2c078e4099d657b2670f591 (diff) | |
download | ruby-02b8414d98c0cc66b7b3870c26a59dd8c5600cf4.tar.gz |
* eval.c (rb_thread_start_1): initialize newly pushed frame.
fixed: [ruby-dev:25707]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -11756,7 +11756,9 @@ rb_thread_start_1() ruby_cref = ip->cref; ruby_dyna_vars = ((struct BLOCK *)DATA_PTR(proc))->dyna_vars; PUSH_FRAME(); - _frame.iter = ITER_CUR; + *ruby_frame = *ip->frame; + ruby_frame->prev = ip->frame; + ruby_frame->iter = ITER_CUR; PUSH_TAG(PROT_NONE); if ((state = EXEC_TAG()) == 0) { if (THREAD_SAVE_CONTEXT(th) == 0) { |