diff options
author | Travis Oliphant <oliphant@enthought.com> | 2005-09-20 08:19:08 +0000 |
---|---|---|
committer | Travis Oliphant <oliphant@enthought.com> | 2005-09-20 08:19:08 +0000 |
commit | 0746db19c3cc198c95b632bd1285978050f355d6 (patch) | |
tree | 7bbc6d05df76ab4fa2959a1cb94e3f4c54a3e74d /scipy/base/src | |
parent | b560ed0a06160b012ea6023be0fc219717f761c4 (diff) | |
download | numpy-0746db19c3cc198c95b632bd1285978050f355d6.tar.gz |
problematic MIN removed.
Diffstat (limited to 'scipy/base/src')
-rw-r--r-- | scipy/base/src/_compiled_base.c | 6 | ||||
-rw-r--r-- | scipy/base/src/arraymethods.c | 7 | ||||
-rw-r--r-- | scipy/base/src/arrayobject.c | 2 | ||||
-rw-r--r-- | scipy/base/src/multiarraymodule.c | 13 |
4 files changed, 17 insertions, 11 deletions
diff --git a/scipy/base/src/_compiled_base.c b/scipy/base/src/_compiled_base.c index 1fcc93b2b..427e941f2 100644 --- a/scipy/base/src/_compiled_base.c +++ b/scipy/base/src/_compiled_base.c @@ -284,7 +284,7 @@ arr_insert(PyObject *self, PyObject *args, PyObject *kwdict) Py_DECREF(amask); Py_DECREF(avalscast); Py_INCREF(Py_None); - PyDataMem_XFREE(zero); + PyDataMem_FREE(zero); return Py_None; } @@ -322,11 +322,11 @@ arr_insert(PyObject *self, PyObject *args, PyObject *kwdict) Py_DECREF(amask); Py_DECREF(avalscast); Py_INCREF(Py_None); - PyDataMem_XFREE(zero); + PyDataMem_FREE(zero); return Py_None; fail: - PyDataMem_XFREE(zero); + PyDataMem_FREE(zero); Py_XDECREF(amask); Py_XDECREF(avals); Py_XDECREF(avalscast); diff --git a/scipy/base/src/arraymethods.c b/scipy/base/src/arraymethods.c index 5b47f145c..4c04e5596 100644 --- a/scipy/base/src/arraymethods.c +++ b/scipy/base/src/arraymethods.c @@ -74,8 +74,10 @@ array_reshape(PyArrayObject *self, PyObject *args) goto fail; } } - - if (newshape.len == 0 || PyArray_ISONESEGMENT(self)) { + + fprintf(stderr, "&newshape = %p, len = %d, ptr=%p\n", &newshape, + newshape.len, newshape.ptr); + if ((newshape.len == 0) || PyArray_ISONESEGMENT(self)) { ret = PyArray_Newshape(self, &newshape); } else { @@ -762,6 +764,7 @@ array_setstate(PyArrayObject *self, PyObject *args) if (self->dimensions != NULL) { PyDimMem_FREE(self->dimensions); + self->dimensions = NULL; } self->flags = DEFAULT_FLAGS; diff --git a/scipy/base/src/arrayobject.c b/scipy/base/src/arrayobject.c index 368c04f62..08c0cb7bf 100644 --- a/scipy/base/src/arrayobject.c +++ b/scipy/base/src/arrayobject.c @@ -3020,7 +3020,7 @@ PyArray_New(PyTypeObject *subtype, int nd, intp *dims, int type_num, { PyArrayObject *self; PyArray_Descr *descr; - int i; + register int i; intp sd, temp; descr = PyArray_DescrFromType(type_num); diff --git a/scipy/base/src/multiarraymodule.c b/scipy/base/src/multiarraymodule.c index 19e3f0a61..435b33c2b 100644 --- a/scipy/base/src/multiarraymodule.c +++ b/scipy/base/src/multiarraymodule.c @@ -220,6 +220,7 @@ PyArray_Newshape(PyArrayObject *self, PyArray_Dims *newdims) s_known = 1; i_unknown = -1; + for(i=0; i<n; i++) { if (dimensions[i] < 0) { if (i_unknown == -1) { @@ -2685,11 +2686,13 @@ PyArray_IntpConverter(PyObject *obj, PyArray_Dims *seq) "must be smaller than %d", MAX_DIMS); return PY_FAIL; } - seq->ptr = PyDimMem_NEW(MIN(1,len)); - if (seq->ptr == NULL) { - PyErr_NoMemory(); - return PY_FAIL; - } + if (len > 0) { + seq->ptr = PyDimMem_NEW(len); + if (seq->ptr == NULL) { + PyErr_NoMemory(); + return PY_FAIL; + } + } seq->len = len; nd = PyArray_IntpFromSequence(obj, (intp *)seq->ptr, len); if (nd == -1 || nd != len) goto fail; |