mercurial/parsers.c
changeset 24499 90db70de6f9c
parent 24443 539b3c7eea44
child 24574 e97a00bf18ae
--- a/mercurial/parsers.c	Sun Mar 29 00:20:56 2015 -0400
+++ b/mercurial/parsers.c	Sun Mar 29 19:06:23 2015 +0200
@@ -912,7 +912,7 @@
 }
 
 static Py_ssize_t add_roots_get_min(indexObject *self, PyObject *list,
-                                    int marker, char *phases)
+                                    Py_ssize_t marker, char *phases)
 {
 	PyObject *iter = NULL;
 	PyObject *iter_item = NULL;
@@ -938,7 +938,7 @@
 }
 
 static inline void set_phase_from_parents(char *phases, int parent_1,
-                                          int parent_2, int i)
+                                          int parent_2, Py_ssize_t i)
 {
 	if (parent_1 >= 0 && phases[parent_1] > phases[i])
 		phases[i] = phases[parent_1];
@@ -960,7 +960,7 @@
 	Py_ssize_t minrevallphases = 0;
 	Py_ssize_t minrevphase = 0;
 	Py_ssize_t i = 0;
-	long parent_1, parent_2;
+	int parent_1, parent_2;
 	char *phases = NULL;
 	const char *data;
 
@@ -998,8 +998,8 @@
 				PyErr_SetString(PyExc_TypeError, "revlog parents are invalid");
 				goto release_phases;
 			}
-			parent_1 = PyInt_AS_LONG(p1);
-			parent_2 = PyInt_AS_LONG(p2);
+			parent_1 = (int)PyInt_AS_LONG(p1);
+			parent_2 = (int)PyInt_AS_LONG(p2);
 			set_phase_from_parents(phases, parent_1, parent_2, i+self->raw_length);
 		}
 	}