diff options
author | Sebastian Berg <sebastian@sipsolutions.net> | 2020-01-07 10:12:58 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-07 10:12:58 -0600 |
commit | 94f930730c61747a9a0cc889743ce335292c3cb8 (patch) | |
tree | 70464c0fd38bca89f5e7b0c3a1180d78acdd2d8d | |
parent | 19aba166d70df31cdc5d79e0e999af9eea40247c (diff) | |
parent | 0ce4b56df09688f870e58cb2602348c3eb3bad62 (diff) | |
download | numpy-94f930730c61747a9a0cc889743ce335292c3cb8.tar.gz |
Merge pull request #15267 from eric-wieser/fix-tuple-PyArray_DescrAlignConverter2
BUG: Fix PyArray_DescrAlignConverter2 on tuples
-rw-r--r-- | numpy/core/src/multiarray/descriptor.c | 27 |
1 files changed, 4 insertions, 23 deletions
diff --git a/numpy/core/src/multiarray/descriptor.c b/numpy/core/src/multiarray/descriptor.c index 4749f9a5e..36b749467 100644 --- a/numpy/core/src/multiarray/descriptor.c +++ b/numpy/core/src/multiarray/descriptor.c @@ -2950,32 +2950,13 @@ PyArray_DescrAlignConverter(PyObject *obj, PyArray_Descr **at) NPY_NO_EXPORT int PyArray_DescrAlignConverter2(PyObject *obj, PyArray_Descr **at) { - if (PyDict_Check(obj) || PyDictProxy_Check(obj)) { - *at = _convert_from_dict(obj, 1); - } - else if (PyBytes_Check(obj)) { - *at = _convert_from_commastring(obj, 1); - } - else if (PyUnicode_Check(obj)) { - PyObject *tmp; - tmp = PyUnicode_AsASCIIString(obj); - *at = _convert_from_commastring(tmp, 1); - Py_DECREF(tmp); - } - else if (PyList_Check(obj)) { - *at = _convert_from_array_descr(obj, 1); + if (obj == Py_None) { + *at = NULL; + return NPY_SUCCEED; } else { - return PyArray_DescrConverter2(obj, at); - } - if (*at == NULL) { - if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ValueError, - "data-type-descriptor not understood"); - } - return NPY_FAIL; + return PyArray_DescrAlignConverter(obj, at); } - return NPY_SUCCEED; } |