8000 BUG: cannot convert invalid sequence index to tuple · seberg/numpy@c85dd45 · GitHub
[go: up one dir, main page]

Skip to content

Commit c85dd45

Browse files
committed
BUG: cannot convert invalid sequence index to tuple
A sequence which raises an error on item getting, should be just handled as a single index and not a tuple nd-index. Also fix some error handling. closes numpygh-5063
1 parent 709a06d commit c85dd45

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

numpy/core/src/multiarray/mapping.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,14 +206,17 @@ prepare_index(PyArrayObject *self, PyObject *index,
206206
n = 0;
207207
make_tuple = 1;
208208
}
209-
n = PySequence_Size(index);
209+
else {
210+
n = PySequence_Size(index);
211+
}
210212
if (n < 0 || n >= NPY_MAXDIMS) {
211213
n = 0;
212214
}
213215
for (i = 0; i < n; i++) {
214216
PyObject *tmp_obj = PySequence_GetItem(index, i);
215217
if (tmp_obj == NULL) {
216-
make_tuple = 1;
218+
PyErr_Clear();
219+
make_tuple = 0;
217220
break;
218221
}
219222
if (PyArray_Check(tmp_obj) || PySequence_Check(tmp_obj)

0 commit comments

Comments
 (0)
0