From 169b46db56e388a4088dcd54310a5eff90a78882 Mon Sep 17 00:00:00 2001 From: AraHaan Date: Sun, 14 Dec 2025 09:19:55 -0500 Subject: [PATCH 1/2] Fixed the asserts in PyAwaitable_AddAwait, PyAwaitable_DeferAwait, and PyAwaitable_SetResult. This is because Py_IS_TYPE already checks Py_TYPE for us causing the assertion to fail. Signed-off-by: AraHaan --- src/_pyawaitable/awaitable.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/_pyawaitable/awaitable.c b/src/_pyawaitable/awaitable.c index a415603..76ba891 100644 --- a/src/_pyawaitable/awaitable.c +++ b/src/_pyawaitable/awaitable.c @@ -160,7 +160,7 @@ PyAwaitable_AddAwait( ) { PyAwaitableObject *aw = (PyAwaitableObject *) self; - assert(Py_IS_TYPE(Py_TYPE(self), PyAwaitable_GetType())); + assert(Py_IS_TYPE(self, PyAwaitable_GetType())); if (coro == NULL) { PyErr_SetString( PyExc_ValueError, @@ -231,7 +231,7 @@ _PyAwaitable_API(int) PyAwaitable_DeferAwait(PyObject * awaitable, PyAwaitable_Defer cb) { PyAwaitableObject *aw = (PyAwaitableObject *) awaitable; - assert(Py_IS_TYPE(Py_TYPE(awaitable), PyAwaitable_GetType())); + assert(Py_IS_TYPE(awaitable, PyAwaitable_GetType())); pyawaitable_callback *aw_c = PyMem_Malloc(sizeof(pyawaitable_callback)); if (aw_c == NULL) { PyErr_NoMemory(); @@ -256,7 +256,7 @@ _PyAwaitable_API(int) PyAwaitable_SetResult(PyObject * awaitable, PyObject * result) { PyAwaitableObject *aw = (PyAwaitableObject *) awaitable; - assert(Py_IS_TYPE(Py_TYPE(awaitable), PyAwaitable_GetType())); + assert(Py_IS_TYPE(awaitable, PyAwaitable_GetType())); aw->aw_result = Py_NewRef(result); return 0; } From 65d4e19481899775152e3e10f9cd64bb69241fe8 Mon Sep 17 00:00:00 2001 From: AraHaan Date: Tue, 16 Dec 2025 08:37:34 -0500 Subject: [PATCH 2/2] Update CHANGELOG with new fixes --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 53fb3e3..693b1af 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## Unreleased - Added `PyAwaitable_AddExpr`. +- Fix assertion failures when running in debug mode. ## [2.0.1] - 2025-06-15