Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix bug pushing frame in _PY_FRAME_KW
_PY_FRAME_KW pushes a pointer to the new frame onto the stack for consumption by the next uop. When pushing the frame fails, we do not want to push the result (NULL) to the stack because it is not a valid stackref. The pre-existing arrangement works fine in the default build because PyStackRef_NULL and NULL are the same value. The error handling code in the interpreter calls `PyStackRef_XCLOSE()` on the value, which is a no-op. In the free-threaded build the values are not the same, so the `PyStackRef_XCLOSE()` in the error handler will attempt to decref a null pointer.
- Loading branch information