From: Mark Dickinson Date: Sun, 15 Nov 2009 12:56:59 +0000 (+0000) Subject: Merged revisions 76298 via svnmerge from X-Git-Tag: v3.1.2rc1~337 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d340f6cd3f8b9417e8ff15a2adcada959878246c;p=python Merged revisions 76298 via svnmerge from svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r76298 | mark.dickinson | 2009-11-15 12:56:08 +0000 (Sun, 15 Nov 2009) | 1 line Fix another case of potential signed overflow. ........ --- diff --git a/Objects/rangeobject.c b/Objects/rangeobject.c index 0fe119cff1..c8b10eb6a8 100644 --- a/Objects/rangeobject.c +++ b/Objects/rangeobject.c @@ -354,7 +354,10 @@ static PyObject * rangeiter_next(rangeiterobject *r) { if (r->index < r->len) - return PyLong_FromLong(r->start + (r->index++) * r->step); + /* cast to unsigned to avoid possible signed overflow + in intermediate calculations. */ + return PyLong_FromLong((long)(r->start + + (unsigned long)(r->index++) * r->step)); return NULL; }