diff --git a/src/ceval.cpp b/src/ceval.cpp index 5810acd6..49bf22f3 100644 --- a/src/ceval.cpp +++ b/src/ceval.cpp @@ -644,11 +644,16 @@ __NEXT_STEP: if(py_bool(TOP())){ DISPATCH_JUMP(byte.arg) }else{ + POP(); DISPATCH() } case OP_JUMP_IF_FALSE_OR_POP: - if(!py_bool(POPX())) DISPATCH_JUMP(byte.arg) - DISPATCH() + if(!py_bool(TOP())){ + DISPATCH_JUMP(byte.arg) + }else{ + POP(); + DISPATCH() + } case OP_SHORTCUT_IF_FALSE_OR_POP: if(!py_bool(TOP())){ // [b, False] STACK_SHRINK(2); // []