diff options
| author | Charles Harris <charlesr.harris@gmail.com> | 2021-05-07 15:08:13 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-05-07 15:08:13 -0600 |
| commit | d908afddfad9508f837aadc6b8c29dd0c94694a1 (patch) | |
| tree | 9942fc267b42bd143977dd4e9a1ffde66ddc986f | |
| parent | ec8d87581fa7555091ef152208f397c78c5940af (diff) | |
| parent | 2430c7614ac04f4a70840836cd58ba09ce20a690 (diff) | |
| download | numpy-d908afddfad9508f837aadc6b8c29dd0c94694a1.tar.gz | |
Merge pull request #18931 from seberg/leak-dtype-deprecation-tests
BUG: Fix refcounting in string-promotion deprecation code path
| -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); } |
