diff options
| -rw-r--r-- | numpy/core/src/multiarray/ctors.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/numpy/core/src/multiarray/ctors.c b/numpy/core/src/multiarray/ctors.c index 487f0d4a9..9b86fca4d 100644 --- a/numpy/core/src/multiarray/ctors.c +++ b/numpy/core/src/multiarray/ctors.c @@ -1301,9 +1301,10 @@ _array_from_array_like(PyObject *op, * We skip bytes and unicode since they are considered scalars. Unicode * would fail but bytes would be incorrectly converted to a uint8 array. */ - if (!PyBytes_Check(op) && !PyUnicode_Check(op)) { + if (PyObject_CheckBuffer(op) && !PyBytes_Check(op) && !PyUnicode_Check(op)) { PyObject *memoryview = PyMemoryView_FromObject(op); if (memoryview == NULL) { + /* TODO: Should probably not blanket ignore errors. */ PyErr_Clear(); } else { |
