summaryrefslogtreecommitdiff
path: root/numpy/core
diff options
context:
space:
mode:
authorMichael Droettboom <mdboom@gmail.com>2014-09-26 10:18:57 -0400
committerMichael Droettboom <mdboom@gmail.com>2014-09-26 10:18:57 -0400
commita7802ce227ac8e99286694afb8f0270281d0d32d (patch)
tree977cff65700c60b245c4b0e135d9d3462cded5fb /numpy/core
parentffacca0b2384fecbf383df137546db02f101e993 (diff)
downloadnumpy-a7802ce227ac8e99286694afb8f0270281d0d32d.tar.gz
When requesting Fortan order, don't return C order.
Diffstat (limited to 'numpy/core')
-rw-r--r--numpy/core/src/multiarray/buffer.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/numpy/core/src/multiarray/buffer.c b/numpy/core/src/multiarray/buffer.c
index e410f12b2..3809bc18d 100644
--- a/numpy/core/src/multiarray/buffer.c
+++ b/numpy/core/src/multiarray/buffer.c
@@ -713,7 +713,8 @@ array_getbuffer(PyObject *obj, Py_buffer *view, int flags)
* (since one of the elements may be -1). In that case, just
* regenerate strides from shape.
*/
- if (PyArray_CHKFLAGS(self, NPY_ARRAY_C_CONTIGUOUS)) {
+ if (PyArray_CHKFLAGS(self, NPY_ARRAY_C_CONTIGUOUS) &&
+ !((flags & PyBUF_F_CONTIGUOUS) == PyBUF_F_CONTIGUOUS)) {
sd = view->itemsize;
for (i = view->ndim-1; i >= 0; --i) {
view->strides[i] = sd;
@@ -947,7 +948,7 @@ _descriptor_from_pep3118_format_fast(char *s, PyObject **result)
*result = (PyObject*)PyArray_DescrNewByteorder(descr, byte_order);
Py_DECREF(descr);
}
-
+
return 1;
}