summaryrefslogtreecommitdiffstats
path: root/Modules/future_builtins.c
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2009-05-25 20:13:36 (GMT)
committerBenjamin Peterson <benjamin@python.org>2009-05-25 20:13:36 (GMT)
commit7285a2666ed408a4a28dfc2cfd452698d970ecf6 (patch)
treef774e669e83e294d368a63a6c3c95644e9a27923 /Modules/future_builtins.c
parent49a6b0ef7086b59ac9fd039bebaedef952ae907d (diff)
downloadcpython-7285a2666ed408a4a28dfc2cfd452698d970ecf6.zip
cpython-7285a2666ed408a4a28dfc2cfd452698d970ecf6.tar.gz
cpython-7285a2666ed408a4a28dfc2cfd452698d970ecf6.tar.bz2
fix error handling
Diffstat (limited to 'Modules/future_builtins.c')
-rw-r--r--Modules/future_builtins.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/Modules/future_builtins.c b/Modules/future_builtins.c
index 4c840fb..bcd42ef 100644
--- a/Modules/future_builtins.c
+++ b/Modules/future_builtins.c
@@ -85,11 +85,12 @@ initfuture_builtins(void)
if (itertools == NULL)
return;
+ /* If anything in the following loop fails, we fall through. */
for (cur_func = it_funcs; *cur_func; ++cur_func){
iter_func = PyObject_GetAttrString(itertools, *cur_func);
- if (iter_func == NULL)
- return;
- PyModule_AddObject(m, *cur_func+1, iter_func);
+ if (iter_func == NULL ||
+ PyModule_AddObject(m, *cur_func+1, iter_func) < 0)
+ break;
}
Py_DECREF(itertools);
/* any other initialization needed */