From 047f3c7ffad1eb30e8b5345d665e3e96062cbd5d Mon Sep 17 00:00:00 2001 From: Neal Norwitz Date: Mon, 12 Jun 2006 02:06:42 +0000 Subject: [PATCH] Fix some Py_ssize_t issues --- Modules/_tkinter.c | 5 +++-- Modules/bz2module.c | 10 +++++----- Modules/dlmodule.c | 4 ++-- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/Modules/_tkinter.c b/Modules/_tkinter.c index 0f6382efc7..ee9a633692 100644 --- a/Modules/_tkinter.c +++ b/Modules/_tkinter.c @@ -932,12 +932,13 @@ AsObj(PyObject *value) #ifdef Py_USING_UNICODE else if (PyUnicode_Check(value)) { Py_UNICODE *inbuf = PyUnicode_AS_UNICODE(value); - int size = PyUnicode_GET_SIZE(value); + Py_ssize_t size = PyUnicode_GET_SIZE(value); /* This #ifdef assumes that Tcl uses UCS-2. See TCL_UTF_MAX test above. */ #if defined(Py_UNICODE_WIDE) && TCL_UTF_MAX == 3 Tcl_UniChar *outbuf; - int i; + Py_ssize_t i; + assert(size < size * sizeof(Tcl_UniChar)); outbuf = (Tcl_UniChar*)ckalloc(size * sizeof(Tcl_UniChar)); if (!outbuf) { PyErr_NoMemory(); diff --git a/Modules/bz2module.c b/Modules/bz2module.c index ed329b8a0f..8f4e1d88f7 100644 --- a/Modules/bz2module.c +++ b/Modules/bz2module.c @@ -1570,7 +1570,7 @@ BZ2Comp_compress(BZ2CompObject *self, PyObject *args) } } - _PyString_Resize(&ret, (int)(BZS_TOTAL_OUT(bzs) - totalout)); + _PyString_Resize(&ret, (Py_ssize_t)(BZS_TOTAL_OUT(bzs) - totalout)); RELEASE_LOCK(self); return ret; @@ -1636,7 +1636,7 @@ BZ2Comp_flush(BZ2CompObject *self) } if (bzs->avail_out != 0) - _PyString_Resize(&ret, (int)(BZS_TOTAL_OUT(bzs) - totalout)); + _PyString_Resize(&ret, (Py_ssize_t)(BZS_TOTAL_OUT(bzs) - totalout)); RELEASE_LOCK(self); return ret; @@ -1860,7 +1860,7 @@ BZ2Decomp_decompress(BZ2DecompObject *self, PyObject *args) } if (bzs->avail_out != 0) - _PyString_Resize(&ret, (int)(BZS_TOTAL_OUT(bzs) - totalout)); + _PyString_Resize(&ret, (Py_ssize_t)(BZS_TOTAL_OUT(bzs) - totalout)); RELEASE_LOCK(self); return ret; @@ -2069,7 +2069,7 @@ bz2_compress(PyObject *self, PyObject *args, PyObject *kwargs) } if (bzs->avail_out != 0) - _PyString_Resize(&ret, (int)BZS_TOTAL_OUT(bzs)); + _PyString_Resize(&ret, (Py_ssize_t)BZS_TOTAL_OUT(bzs)); BZ2_bzCompressEnd(bzs); return ret; @@ -2148,7 +2148,7 @@ bz2_decompress(PyObject *self, PyObject *args) } if (bzs->avail_out != 0) - _PyString_Resize(&ret, (int)BZS_TOTAL_OUT(bzs)); + _PyString_Resize(&ret, (Py_ssize_t)BZS_TOTAL_OUT(bzs)); BZ2_bzDecompressEnd(bzs); return ret; diff --git a/Modules/dlmodule.c b/Modules/dlmodule.c index 09556814f2..899ad866cf 100644 --- a/Modules/dlmodule.c +++ b/Modules/dlmodule.c @@ -77,8 +77,8 @@ dl_call(dlobject *xp, PyObject *args) long, long, long, long, long); long alist[10]; long res; - int i; - int n = PyTuple_Size(args); + Py_ssize_t i; + Py_ssize_t n = PyTuple_Size(args); if (n < 1) { PyErr_SetString(PyExc_TypeError, "at least a name is needed"); return NULL; -- 2.50.0