]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-38823: Clean up refleaks in _asyncio initialization. (GH-17195)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Sat, 16 Nov 2019 22:45:24 +0000 (14:45 -0800)
committerGitHub <noreply@github.com>
Sat, 16 Nov 2019 22:45:24 +0000 (14:45 -0800)
https://bugs.python.org/issue38823
(cherry picked from commit c3f6bdc332d23588102eba749a5929dd5bb67c9d)

Co-authored-by: Brandt Bucher <brandtbucher@gmail.com>
Modules/_asynciomodule.c

index 62173994a6ec9de6ee4659ed415b506431c0ceb1..99d5f1d8596ef0852c7ccf1603591dfb866f150e 100644 (file)
@@ -3361,24 +3361,28 @@ PyInit__asyncio(void)
     Py_INCREF(&FutureType);
     if (PyModule_AddObject(m, "Future", (PyObject *)&FutureType) < 0) {
         Py_DECREF(&FutureType);
+        Py_DECREF(m);
         return NULL;
     }
 
     Py_INCREF(&TaskType);
     if (PyModule_AddObject(m, "Task", (PyObject *)&TaskType) < 0) {
         Py_DECREF(&TaskType);
+        Py_DECREF(m);
         return NULL;
     }
 
     Py_INCREF(all_tasks);
     if (PyModule_AddObject(m, "_all_tasks", all_tasks) < 0) {
         Py_DECREF(all_tasks);
+        Py_DECREF(m);
         return NULL;
     }
 
     Py_INCREF(current_tasks);
     if (PyModule_AddObject(m, "_current_tasks", current_tasks) < 0) {
         Py_DECREF(current_tasks);
+        Py_DECREF(m);
         return NULL;
     }