From d401eddf91870aa1d830ec6b5eb06affc15374a3 Mon Sep 17 00:00:00 2001 From: Tim Peters Date: Mon, 14 May 2001 23:19:12 +0000 Subject: Fix new compiler warnings. Also boost "start" from (C) int to long and return a (C) long: PyArg_ParseTuple and Py_BuildValue may not let us get at the size_t we really want, but C int is clearly too small for a 64-bit box, and both the start parameter and the return value should work for large mapped files even on 32-bit boxes. The code really needs to be rethought from scratch (not by me, though ...). --- Modules/mmapmodule.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Modules/mmapmodule.c b/Modules/mmapmodule.c index acf85a4..63ef72a 100644 --- a/Modules/mmapmodule.c +++ b/Modules/mmapmodule.c @@ -224,12 +224,12 @@ static PyObject * mmap_find_method(mmap_object *self, PyObject *args) { - int start = self->pos; + long start = self->pos; char *needle; int len; CHECK_VALID(NULL); - if (!PyArg_ParseTuple (args, "s#|i:find", &needle, &len, &start)) { + if (!PyArg_ParseTuple (args, "s#|l:find", &needle, &len, &start)) { return NULL; } else { char *p; @@ -239,7 +239,7 @@ mmap_find_method(mmap_object *self, start += self->size; if (start < 0) start = 0; - else if (start > self->size) + else if ((size_t)start > self->size) start = self->size; p = self->data + start; @@ -251,8 +251,8 @@ mmap_find_method(mmap_object *self, } if (!*n) { return Py_BuildValue ( - "i", - (int) (p - self->data)); + "l", + (long) (p - self->data)); } p++; } -- cgit v0.12