builtin_map(): A better fix for the previous leak plug (remember
PyList_Append steals a reference even if it fails).

builtin_filter(): Had the same leak problem as builtin_map().
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index 1929ae9..b0d0648 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -232,8 +232,10 @@
 					goto Fail_1;
 			}
 			else {
+				int status = PyList_Append(result, item);
 				j++;
-				if (PyList_Append(result, item) < 0)
+				Py_DECREF(item);
+				if (status < 0)
 					goto Fail_1;
 			}
 		} else {
@@ -901,9 +903,10 @@
 				goto Fail_1;
 		}
 		if (i >= len) {
-			if (PyList_Append(result, value) < 0)
-				goto Fail_1;
+			int status = PyList_Append(result, value);
 			Py_DECREF(value);
+			if (status < 0)
+				goto Fail_1;
 		}
 		else {
 			if (PyList_SetItem(result, i, value) < 0)