blueloveTH 1 年之前
父节点
当前提交
16937c691c
共有 1 个文件被更改,包括 7 次插入2 次删除
  1. 7 2
      src/ceval.cpp

+ 7 - 2
src/ceval.cpp

@@ -644,11 +644,16 @@ __NEXT_STEP:
         if(py_bool(TOP())){
         if(py_bool(TOP())){
             DISPATCH_JUMP(byte.arg)
             DISPATCH_JUMP(byte.arg)
         }else{
         }else{
+            POP();
             DISPATCH()
             DISPATCH()
         }
         }
     case OP_JUMP_IF_FALSE_OR_POP:
     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:
     case OP_SHORTCUT_IF_FALSE_OR_POP:
         if(!py_bool(TOP())){                // [b, False]
         if(!py_bool(TOP())){                // [b, False]
             STACK_SHRINK(2);                // []
             STACK_SHRINK(2);                // []