Mercurial > pygame
diff src/pixelarray.c @ 2300:a76f2f499bbe
Fixes some array interface related crashes and test failures on the amd64 platform(win and osx). Thanks Christoph Gohlke.
| author | Rene Dudfield <renesd@gmail.com> |
|---|---|
| date | Sat, 30 Jul 2011 10:38:49 +0000 |
| parents | 5985bf3a6235 |
| children |
line wrap: on
line diff
--- a/src/pixelarray.c Sat Jul 30 06:31:17 2011 +0000 +++ b/src/pixelarray.c Sat Jul 30 10:38:49 2011 +0000 @@ -404,9 +404,9 @@ _pxarray_get_shape(PyPixelArray *self, void *closure) { if (self->dim1) { - return Py_BuildValue("(ll)", (long)self->dim0, (long)self->dim1); + return Py_BuildValue("(nn)", self->dim0, self->dim1); } - return Py_BuildValue("(l)", (long)self->dim0); + return Py_BuildValue("(n)", self->dim0); } /** @@ -416,9 +416,9 @@ _pxarray_get_strides(PyPixelArray *self, void *closure) { if (self->dim1) { - return Py_BuildValue("(ll)", (long)self->stride0, (long)self->stride1); + return Py_BuildValue("(nn)", self->stride0, self->stride1); } - return Py_BuildValue("(l)", (long)self->stride0); + return Py_BuildValue("(n)", self->stride0); } /** @@ -1589,8 +1589,8 @@ /* TODO: by time we can make this faster by avoiding the creation of * temporary subarrays. */ - Uint32 dim0 = array->dim0; - Uint32 dim1 = array->dim1; + Py_ssize_t dim0 = array->dim0; + Py_ssize_t dim1 = array->dim1; /* Note: order matters here. * First check array[x,y], then array[x:y:z], then array[x]
