diff --git a/ChangeLog b/ChangeLog index 2144d209a3..ca71e9370e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Tue Oct 16 06:44:06 2012 Koichi Sasada + + * vm_insnhelper.c (VM_CALLEE_SETUP_ARG): fix wrong condition. + Tue Oct 16 06:29:18 2012 Koichi Sasada * vm_insnhelper.c (vm_call_method): disable CI_SET_FASTPATH() if diff --git a/vm_insnhelper.c b/vm_insnhelper.c index 239f67f3dd..4b41af6e73 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -1183,7 +1183,7 @@ static VALUE vm_call_iseq_setup_2(rb_thread_t *th, rb_control_frame_t *cfp, rb_c argument_error((iseq), ((ci)->argc), (iseq)->argc, (iseq)->argc); \ } \ (ci)->opt_pc = 0; \ - CI_SET_FASTPATH((ci), vm_call_iseq_setup_2, !(is_lambda) && ((ci)->me->flag & NOEX_PROTECTED)); \ + CI_SET_FASTPATH((ci), vm_call_iseq_setup_2, !(is_lambda) && !((ci)->me->flag & NOEX_PROTECTED)); \ } \ else { \ (ci)->opt_pc = vm_callee_setup_arg_complex((th), (ci), (iseq), (argv)); \