diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2013-09-21 04:16:28 -0700 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2013-09-21 04:16:28 -0700 |
| commit | eeac4be4ce06542361c61a42a1d413a4098467b5 (patch) | |
| tree | 180b7a296052e7e7bf9ad45ddd1e456fe3938939 | |
| parent | 3995e7ff8f970ec9f2fb60fba2338108f6f07e05 (diff) | |
| parent | 862517d540c12a54c5750e83a65274bccfe9df51 (diff) | |
| download | mruby-eeac4be4ce06542361c61a42a1d413a4098467b5.tar.gz mruby-eeac4be4ce06542361c61a42a1d413a4098467b5.zip | |
Merge pull request #1507 from ktaobo/yield-self
Use self for the given proc in mrb_yield
| -rw-r--r-- | src/vm.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -460,7 +460,7 @@ mrb_yield_argv(mrb_state *mrb, mrb_value b, int argc, mrb_value *argv) { struct RProc *p = mrb_proc_ptr(b); - return mrb_yield_internal(mrb, b, argc, argv, mrb->c->stack[0], p->target_class); + return mrb_yield_internal(mrb, b, argc, argv, p->env->stack[0], p->target_class); } mrb_value @@ -468,7 +468,7 @@ mrb_yield(mrb_state *mrb, mrb_value b, mrb_value arg) { struct RProc *p = mrb_proc_ptr(b); - return mrb_yield_internal(mrb, b, 1, &arg, mrb->c->stack[0], p->target_class); + return mrb_yield_internal(mrb, b, 1, &arg, p->env->stack[0], p->target_class); } typedef enum { |
