[Python-checkins] r72921 - python/trunk/Modules/future_builtins.c

benjamin.peterson python-checkins at python.org
Mon May 25 22:13:36 CEST 2009


Author: benjamin.peterson
Date: Mon May 25 22:13:36 2009
New Revision: 72921

Log:
fix error handling

Modified:
   python/trunk/Modules/future_builtins.c

Modified: python/trunk/Modules/future_builtins.c
==============================================================================
--- python/trunk/Modules/future_builtins.c	(original)
+++ python/trunk/Modules/future_builtins.c	Mon May 25 22:13:36 2009
@@ -85,11 +85,12 @@
 	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 */


More information about the Python-checkins mailing list