summaryrefslogtreecommitdiff
path: root/numpy
diff options
context:
space:
mode:
authorChristopher L. Farrow <cfarrow@enthought.com>2011-08-04 17:33:09 -0500
committerCharles Harris <charlesr.harris@gmail.com>2011-10-02 09:09:39 -0600
commit943f2b19591a93fe8385a2ed437bf5eafe4aefec (patch)
tree5204a49745c270e38b57b1977fd7a8db7411f745 /numpy
parentdadf7ed8b3bfb10ee3249918a9d48e4a3e3f0e7c (diff)
downloadnumpy-943f2b19591a93fe8385a2ed437bf5eafe4aefec.tar.gz
BUG: fixing reference leak in OBJECT_fill
Diffstat (limited to 'numpy')
-rw-r--r--numpy/core/src/multiarray/arraytypes.c.src4
1 files changed, 3 insertions, 1 deletions
diff --git a/numpy/core/src/multiarray/arraytypes.c.src b/numpy/core/src/multiarray/arraytypes.c.src
index 7242f121f..fd46d929a 100644
--- a/numpy/core/src/multiarray/arraytypes.c.src
+++ b/numpy/core/src/multiarray/arraytypes.c.src
@@ -2899,12 +2899,13 @@ OBJECT_fill(PyObject **buffer, intp length, void *NPY_UNUSED(ignored))
intp i;
PyObject *start = buffer[0];
PyObject *delta = buffer[1];
+ PyObject *second;
delta = PyNumber_Subtract(delta, start);
if (!delta) {
return;
}
- start = PyNumber_Add(start, delta);
+ second = start = PyNumber_Add(start, delta);
if (!start) {
goto finish;
}
@@ -2920,6 +2921,7 @@ OBJECT_fill(PyObject **buffer, intp length, void *NPY_UNUSED(ignored))
}
finish:
+ Py_XDECREF(second);
Py_DECREF(delta);
return;
}