Expand the PySlice_GetIndicesEx macro. (#1023) (#1044)
(cherry picked from commit b879fe82e7e5c3f7673c9a7fa4aad42bd05445d8)
diff --git a/Modules/_elementtree.c b/Modules/_elementtree.c
index e3350d1..bef702e 100644
--- a/Modules/_elementtree.c
+++ b/Modules/_elementtree.c
@@ -1712,11 +1712,11 @@
if (!self->extra)
return PyList_New(0);
- if (PySlice_GetIndicesEx(item,
- self->extra->length,
- &start, &stop, &step, &slicelen) < 0) {
+ if (PySlice_Unpack(item, &start, &stop, &step) < 0) {
return NULL;
}
+ slicelen = PySlice_AdjustIndices(self->extra->length, &start, &stop,
+ step);
if (slicelen <= 0)
return PyList_New(0);
@@ -1768,11 +1768,11 @@
return -1;
}
- if (PySlice_GetIndicesEx(item,
- self->extra->length,
- &start, &stop, &step, &slicelen) < 0) {
+ if (PySlice_Unpack(item, &start, &stop, &step) < 0) {
return -1;
}
+ slicelen = PySlice_AdjustIndices(self->extra->length, &start, &stop,
+ step);
if (value == NULL) {
/* Delete slice */