diff options
| -rw-r--r-- | numpy/core/src/umath/ufunc_type_resolution.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/numpy/core/src/umath/ufunc_type_resolution.c b/numpy/core/src/umath/ufunc_type_resolution.c index 465deb87b..a3f97a8f3 100644 --- a/numpy/core/src/umath/ufunc_type_resolution.c +++ b/numpy/core/src/umath/ufunc_type_resolution.c @@ -540,7 +540,12 @@ PyUFunc_SimpleUniformOperationTypeResolver( out_dtypes[iop] = PyArray_DESCR(operands[iop]); Py_INCREF(out_dtypes[iop]); } - return raise_no_loop_found_error(ufunc, out_dtypes); + raise_no_loop_found_error(ufunc, out_dtypes); + for (iop = 0; iop < ufunc->nin; iop++) { + Py_DECREF(out_dtypes[iop]); + out_dtypes[iop] = NULL; + } + return -1; } out_dtypes[0] = PyArray_ResultType(ufunc->nin, operands, 0, NULL); } |
