summaryrefslogtreecommitdiff
path: root/Modules/mathmodule.c
diff options
context:
space:
mode:
Diffstat (limited to 'Modules/mathmodule.c')
-rw-r--r--Modules/mathmodule.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/Modules/mathmodule.c b/Modules/mathmodule.c
index a2a2db29be..16da00817b 100644
--- a/Modules/mathmodule.c
+++ b/Modules/mathmodule.c
@@ -3081,14 +3081,9 @@ math_prod_impl(PyObject *module, PyObject *iterable, PyObject *start)
}
if (result == NULL) {
- result = PyLong_FromLong(1);
- if (result == NULL) {
- Py_DECREF(iter);
- return NULL;
- }
- } else {
- Py_INCREF(result);
+ result = _PyLong_GetOne();
}
+ Py_INCREF(result);
#ifndef SLOW_PROD
/* Fast paths for integers keeping temporary products in C.
* Assumes all inputs are the same type.
@@ -3104,7 +3099,7 @@ math_prod_impl(PyObject *module, PyObject *iterable, PyObject *start)
}
/* Loop over all the items in the iterable until we finish, we overflow
* or we found a non integer element */
- while(result == NULL) {
+ while (result == NULL) {
item = PyIter_Next(iter);
if (item == NULL) {
Py_DECREF(iter);