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( ...@@ -1055,13 +1055,15 @@ int InternalDeleteRepeatedField(
if (PySlice_Check(slice)) { if (PySlice_Check(slice)) {
from = to = step = slice_length = 0; from = to = step = slice_length = 0;
PySlice_GetIndicesEx(
#if PY_MAJOR_VERSION < 3 #if PY_MAJOR_VERSION < 3
PySlice_GetIndicesEx(
reinterpret_cast<PySliceObject*>(slice), reinterpret_cast<PySliceObject*>(slice),
length, &from, &to, &step, &slice_length);
#else #else
PySlice_GetIndicesEx(
slice, slice,
#endif
length, &from, &to, &step, &slice_length); length, &from, &to, &step, &slice_length);
#endif
if (from < to) { if (from < to) {
min = from; min = from;
max = to - 1; max = to - 1;
......
...@@ -266,10 +266,11 @@ int AssignSubscript(RepeatedCompositeContainer* self, ...@@ -266,10 +266,11 @@ int AssignSubscript(RepeatedCompositeContainer* self,
if (PySlice_Check(slice)) { if (PySlice_Check(slice)) {
#if PY_MAJOR_VERSION >= 3 #if PY_MAJOR_VERSION >= 3
if (PySlice_GetIndicesEx(slice, if (PySlice_GetIndicesEx(slice,
length, &from, &to, &step, &slicelength) == -1) {
#else #else
if (PySlice_GetIndicesEx(reinterpret_cast<PySliceObject*>(slice), if (PySlice_GetIndicesEx(reinterpret_cast<PySliceObject*>(slice),
#endif
length, &from, &to, &step, &slicelength) == -1) { length, &from, &to, &step, &slicelength) == -1) {
#endif
return -1; return -1;
} }
return PySequence_DelSlice(self->child_messages, from, to); return PySequence_DelSlice(self->child_messages, from, to);
......
...@@ -305,10 +305,12 @@ static PyObject* Subscript(RepeatedScalarContainer* self, PyObject* slice) { ...@@ -305,10 +305,12 @@ static PyObject* Subscript(RepeatedScalarContainer* self, PyObject* slice) {
length = Len(self); length = Len(self);
#if PY_MAJOR_VERSION >= 3 #if PY_MAJOR_VERSION >= 3
if (PySlice_GetIndicesEx(slice, if (PySlice_GetIndicesEx(slice,
length, &from, &to, &step, &slicelength) == -1) {
#else #else
if (PySlice_GetIndicesEx(reinterpret_cast<PySliceObject*>(slice), if (PySlice_GetIndicesEx(reinterpret_cast<PySliceObject*>(slice),
#endif
length, &from, &to, &step, &slicelength) == -1) { length, &from, &to, &step, &slicelength) == -1) {
#endif
return NULL; return NULL;
} }
return_list = true; return_list = true;
...@@ -458,10 +460,11 @@ static int AssSubscript(RepeatedScalarContainer* self, ...@@ -458,10 +460,11 @@ static int AssSubscript(RepeatedScalarContainer* self,
length = reflection->FieldSize(*message, field_descriptor); length = reflection->FieldSize(*message, field_descriptor);
#if PY_MAJOR_VERSION >= 3 #if PY_MAJOR_VERSION >= 3
if (PySlice_GetIndicesEx(slice, if (PySlice_GetIndicesEx(slice,
length, &from, &to, &step, &slicelength) == -1) {
#else #else
if (PySlice_GetIndicesEx(reinterpret_cast<PySliceObject*>(slice), if (PySlice_GetIndicesEx(reinterpret_cast<PySliceObject*>(slice),
#endif
length, &from, &to, &step, &slicelength) == -1) { length, &from, &to, &step, &slicelength) == -1) {
#endif
return -1; return -1;
} }
create_list = true; 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