Skip to content

Commit 3e3048d

Browse files
committed
Merge pull request mruby#2599 from SatoshiOdawara/fix_target_class_in_instance_eval
target_class should not be TT_ICLASS in instance_eval(string); ref mruby#1152
2 parents d85cce9 + a10d36e commit 3e3048d

1 file changed

Lines changed: 4 additions & 0 deletions

File tree

mrbgems/mruby-eval/src/eval.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
#include "mruby.h"
2+
#include "mruby/class.h"
23
#include "mruby/compile.h"
34
#include "mruby/irep.h"
45
#include "mruby/proc.h"
@@ -206,6 +207,9 @@ f_instance_eval(mrb_state *mrb, mrb_value self)
206207

207208
mrb_get_args(mrb, "s|zi", &s, &len, &file, &line);
208209
mrb->c->ci->acc = CI_ACC_SKIP;
210+
if (mrb->c->ci->target_class->tt == MRB_TT_ICLASS) {
211+
mrb->c->ci->target_class = mrb->c->ci->target_class->c;
212+
}
209213
return mrb_run(mrb, create_proc_from_string(mrb, s, len, mrb_nil_value(), file, line), self);
210214
}
211215
else {

0 commit comments

Comments
 (0)