Fix some Py_ssize_t issues
diff --git a/Modules/_tkinter.c b/Modules/_tkinter.c
index 0f6382e..ee9a633 100644
--- a/Modules/_tkinter.c
+++ b/Modules/_tkinter.c
@@ -932,12 +932,13 @@
#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 ed329b8..8f4e1d8 100644
--- a/Modules/bz2module.c
+++ b/Modules/bz2module.c
@@ -1570,7 +1570,7 @@
}
}
- _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 @@
}
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 @@
}
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 @@
}
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 @@
}
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 0955681..899ad86 100644
--- a/Modules/dlmodule.c
+++ b/Modules/dlmodule.c
@@ -77,8 +77,8 @@
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;