diff options
author | Travis Oliphant <oliphant@enthought.com> | 2006-03-21 05:21:43 +0000 |
---|---|---|
committer | Travis Oliphant <oliphant@enthought.com> | 2006-03-21 05:21:43 +0000 |
commit | cdbcee59fbe407dcfa3a81fc18f95eca4e8ec6c4 (patch) | |
tree | eb824394b6eeb3f6f02cebc63ad17a36828c2dae /numpy/core/src/arrayobject.c | |
parent | cd5f36dc87fd462bc0391a3f7e13036bf1ad3c40 (diff) | |
download | numpy-cdbcee59fbe407dcfa3a81fc18f95eca4e8ec6c4.tar.gz |
Fix reshape to always interpret as C-contiguous unless fortran=True is given or fortran=None and array is already fortran array.
Diffstat (limited to 'numpy/core/src/arrayobject.c')
-rw-r--r-- | numpy/core/src/arrayobject.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/numpy/core/src/arrayobject.c b/numpy/core/src/arrayobject.c index cf14b350e..306cfeae7 100644 --- a/numpy/core/src/arrayobject.c +++ b/numpy/core/src/arrayobject.c @@ -801,10 +801,11 @@ PyArray_FromDims(int nd, int *d, int type) Copy an array. */ static PyObject * -PyArray_NewCopy(PyArrayObject *m1, int fortran) +PyArray_NewCopy(PyArrayObject *m1, PyArray_CONDITION fortran) { PyArrayObject *ret; - if (fortran < 0) fortran = PyArray_ISFORTRAN(m1); + if (fortran == PyArray_DONTCARE) + fortran = PyArray_ISFORTRAN(m1); Py_INCREF(m1->descr); ret = (PyArrayObject *)PyArray_NewFromDescr(m1->ob_type, @@ -4098,7 +4099,8 @@ PyArray_NewFromDescr(PyTypeObject *subtype, PyArray_Descr *descr, int nd, object. */ static PyObject * -PyArray_Resize(PyArrayObject *self, PyArray_Dims *newshape, int refcheck) +PyArray_Resize(PyArrayObject *self, PyArray_Dims *newshape, int refcheck, + PyArray_CONDITION fortran) { intp oldsize, newsize; int new_nd=newshape->len, k, n, elsize; @@ -4115,6 +4117,9 @@ PyArray_Resize(PyArrayObject *self, PyArray_Dims *newshape, int refcheck) return NULL; } + if (fortran == PyArray_DONTCARE) + fortran = PyArray_FALSE; + newsize = PyArray_MultiplyList(new_dimensions, new_nd); oldsize = PyArray_SIZE(self); |