summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Modules/_asynciomodule.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/Modules/_asynciomodule.c b/Modules/_asynciomodule.c
index 6d06208..3a11cdc 100644
--- a/Modules/_asynciomodule.c
+++ b/Modules/_asynciomodule.c
@@ -3514,15 +3514,11 @@ _asyncio_current_task_impl(PyObject *module, PyObject *loop)
Py_INCREF(loop);
}
- ret = PyDict_GetItemWithError(state->current_tasks, loop);
+ int rc = PyDict_GetItemRef(state->current_tasks, loop, &ret);
Py_DECREF(loop);
- if (ret == NULL && PyErr_Occurred()) {
- return NULL;
- }
- else if (ret == NULL) {
+ if (rc == 0) {
Py_RETURN_NONE;
}
- Py_INCREF(ret);
return ret;
}