diff options
| -rw-r--r-- | numpy/core/src/multiarray/scalarapi.c | 2 | ||||
| -rw-r--r-- | numpy/core/tests/test_records.py | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/numpy/core/src/multiarray/scalarapi.c b/numpy/core/src/multiarray/scalarapi.c index 71a82d7a0..85824f2ce 100644 --- a/numpy/core/src/multiarray/scalarapi.c +++ b/numpy/core/src/multiarray/scalarapi.c @@ -799,7 +799,7 @@ PyArray_Scalar(void *data, PyArray_Descr *descr, PyObject *base) Py_INCREF(descr); vobj->obval = NULL; Py_SIZE(vobj) = itemsize; - vobj->flags = NPY_ARRAY_BEHAVED | NPY_ARRAY_OWNDATA; + vobj->flags = NPY_ARRAY_CARRAY | NPY_ARRAY_F_CONTIGUOUS | NPY_ARRAY_OWNDATA; swap = 0; if (PyDataType_HASFIELDS(descr)) { if (base) { diff --git a/numpy/core/tests/test_records.py b/numpy/core/tests/test_records.py index 9fbdf51d6..2c85546a7 100644 --- a/numpy/core/tests/test_records.py +++ b/numpy/core/tests/test_records.py @@ -299,6 +299,15 @@ class TestRecord(TestCase): assert_equal(a, pickle.loads(pickle.dumps(a))) assert_equal(a[0], pickle.loads(pickle.dumps(a[0]))) + def test_pickle_3(self): + # Issue #7140 + a = self.data + pa = pickle.loads(pickle.dumps(a[0])) + assert_(pa.flags.c_contiguous) + assert_(pa.flags.f_contiguous) + assert_(pa.flags.writeable) + assert_(pa.flags.aligned) + def test_objview_record(self): # https://github.com/numpy/numpy/issues/2599 dt = np.dtype([('foo', 'i8'), ('bar', 'O')]) |
