diff options
author | Benjamin Peterson <benjamin@python.org> | 2009-05-25 20:13:36 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2009-05-25 20:13:36 (GMT) |
commit | 7285a2666ed408a4a28dfc2cfd452698d970ecf6 (patch) | |
tree | f774e669e83e294d368a63a6c3c95644e9a27923 /Modules/future_builtins.c | |
parent | 49a6b0ef7086b59ac9fd039bebaedef952ae907d (diff) | |
download | cpython-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.c | 7 |
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 */ |