Commit bba4c4ae authored by Jie Luo's avatar Jie Luo Committed by GitHub

Merge pull request #3262 from snnn/master

Make it compatible with python 3.6.1
parents aa61bb0d 4987ddac
......@@ -1055,13 +1055,15 @@ int InternalDeleteRepeatedField(
if (PySlice_Check(slice)) {
from = to = step = slice_length = 0;
PySlice_GetIndicesEx(
#if PY_MAJOR_VERSION < 3
PySlice_GetIndicesEx(
reinterpret_cast<PySliceObject*>(slice),
length, &from, &to, &step, &slice_length);
#else
PySlice_GetIndicesEx(
slice,
#endif
length, &from, &to, &step, &slice_length);
#endif
if (from < to) {
min = from;
max = to - 1;
......
......@@ -266,10 +266,11 @@ int AssignSubscript(RepeatedCompositeContainer* self,
if (PySlice_Check(slice)) {
#if PY_MAJOR_VERSION >= 3
if (PySlice_GetIndicesEx(slice,
length, &from, &to, &step, &slicelength) == -1) {
#else
if (PySlice_GetIndicesEx(reinterpret_cast<PySliceObject*>(slice),
#endif
length, &from, &to, &step, &slicelength) == -1) {
#endif
return -1;
}
return PySequence_DelSlice(self->child_messages, from, to);
......
......@@ -305,10 +305,12 @@ static PyObject* Subscript(RepeatedScalarContainer* self, PyObject* slice) {
length = Len(self);
#if PY_MAJOR_VERSION >= 3
if (PySlice_GetIndicesEx(slice,
length, &from, &to, &step, &slicelength) == -1) {
#else
if (PySlice_GetIndicesEx(reinterpret_cast<PySliceObject*>(slice),
#endif
length, &from, &to, &step, &slicelength) == -1) {
#endif
return NULL;
}
return_list = true;
......@@ -458,10 +460,11 @@ static int AssSubscript(RepeatedScalarContainer* self,
length = reflection->FieldSize(*message, field_descriptor);
#if PY_MAJOR_VERSION >= 3
if (PySlice_GetIndicesEx(slice,
length, &from, &to, &step, &slicelength) == -1) {
#else
if (PySlice_GetIndicesEx(reinterpret_cast<PySliceObject*>(slice),
#endif
length, &from, &to, &step, &slicelength) == -1) {
#endif
return -1;
}
create_list = true;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment