Issue #9566: use Py_ssize_t instead of int

This commit is contained in:
Victor Stinner 2011-01-04 12:59:15 +00:00
parent 6ab8e8298e
commit 0fcab4a3ed
14 changed files with 32 additions and 33 deletions

View File

@ -3925,14 +3925,14 @@ PyTypeObject PyCFuncPtr_Type = {
Returns -1 on error, or the index of next argument on success.
*/
static int
static Py_ssize_t
_init_pos_args(PyObject *self, PyTypeObject *type,
PyObject *args, PyObject *kwds,
int index)
Py_ssize_t index)
{
StgDictObject *dict;
PyObject *fields;
int i;
Py_ssize_t i;
if (PyType_stgdict((PyObject *)type->tp_base)) {
index = _init_pos_args(self, type->tp_base,

View File

@ -2188,7 +2188,7 @@ argparsing(PyObject *o, PyObject *args)
/* argument converter not called? */
return NULL;
/* Should be 1 */
res = PyLong_FromLong(Py_REFCNT(str2));
res = PyLong_FromSsize_t(Py_REFCNT(str2));
Py_DECREF(str2);
PyErr_Clear();
return res;

View File

@ -309,7 +309,7 @@ audioop_check_size(int size)
}
static int
audioop_check_parameters(int len, int size)
audioop_check_parameters(Py_ssize_t len, int size)
{
if (!audioop_check_size(size))
return 0;

View File

@ -228,9 +228,9 @@ void md5_init(struct md5_state *md5)
@param inlen The length of the data (octets)
*/
void md5_process(struct md5_state *md5,
const unsigned char *in, unsigned long inlen)
const unsigned char *in, Py_ssize_t inlen)
{
unsigned long n;
Py_ssize_t n;
assert(md5 != NULL);
assert(in != NULL);

View File

@ -800,7 +800,7 @@ readinst(char *buf, int buf_size, PyObject *meth)
PyObject *arg = NULL;
PyObject *bytes = NULL;
PyObject *str = NULL;
int len = -1;
Py_ssize_t len = -1;
char *ptr;
if ((bytes = PyLong_FromLong(buf_size)) == NULL)
@ -831,7 +831,7 @@ readinst(char *buf, int buf_size, PyObject *meth)
if (len > buf_size) {
PyErr_Format(PyExc_ValueError,
"read() returned too much data: "
"%i bytes requested, %i returned",
"%i bytes requested, %zi returned",
buf_size, len);
goto finally;
}
@ -839,7 +839,7 @@ readinst(char *buf, int buf_size, PyObject *meth)
finally:
Py_XDECREF(arg);
Py_XDECREF(str);
return len;
return (int)len;
}
PyDoc_STRVAR(xmlparse_ParseFile__doc__,
@ -1807,7 +1807,7 @@ MODULE_INITFUNC(void)
Py_XDECREF(rev_codes_dict);
return NULL;
}
#define MYCONST(name) \
if (PyModule_AddStringConstant(errors_module, #name, \
(char *)XML_ErrorString(name)) < 0) \
@ -1873,7 +1873,7 @@ MODULE_INITFUNC(void)
return NULL;
if (PyModule_AddObject(errors_module, "messages", rev_codes_dict) < 0)
return NULL;
#undef MYCONST
#define MYCONST(c) PyModule_AddIntConstant(m, #c, c)

View File

@ -81,10 +81,9 @@ reap_obj(pylist fd2obj[FD_SETSIZE + 1])
static int
seq2set(PyObject *seq, fd_set *set, pylist fd2obj[FD_SETSIZE + 1])
{
int i;
int max = -1;
int index = 0;
int len = -1;
Py_ssize_t i, len = -1;
PyObject* fast_seq = NULL;
PyObject* o = NULL;

View File

@ -203,9 +203,9 @@ void sha1_init(struct sha1_state *sha1)
@param inlen The length of the data (octets)
*/
void sha1_process(struct sha1_state *sha1,
const unsigned char *in, unsigned long inlen)
const unsigned char *in, Py_ssize_t inlen)
{
unsigned long n;
Py_ssize_t n;
assert(sha1 != NULL);
assert(in != NULL);

View File

@ -265,9 +265,9 @@ sha224_init(SHAobject *sha_info)
/* update the SHA digest */
static void
sha_update(SHAobject *sha_info, SHA_BYTE *buffer, int count)
sha_update(SHAobject *sha_info, SHA_BYTE *buffer, Py_ssize_t count)
{
int i;
Py_ssize_t i;
SHA_INT32 clo;
clo = sha_info->count_lo + ((SHA_INT32) count << 3);

View File

@ -291,9 +291,9 @@ sha384_init(SHAobject *sha_info)
/* update the SHA digest */
static void
sha512_update(SHAobject *sha_info, SHA_BYTE *buffer, int count)
sha512_update(SHAobject *sha_info, SHA_BYTE *buffer, Py_ssize_t count)
{
int i;
Py_ssize_t i;
SHA_INT32 clo;
clo = sha_info->count_lo + ((SHA_INT32) count << 3);

View File

@ -403,7 +403,8 @@ unicodedata_decomposition(PyObject *self, PyObject *args)
{
PyUnicodeObject *v;
char decomp[256];
int code, index, count, i;
int code, index, count;
size_t i;
unsigned int prefix_index;
Py_UCS4 c;
@ -450,15 +451,12 @@ unicodedata_decomposition(PyObject *self, PyObject *args)
while (count-- > 0) {
if (i)
decomp[i++] = ' ';
assert((size_t)i < sizeof(decomp));
assert(i < sizeof(decomp));
PyOS_snprintf(decomp + i, sizeof(decomp) - i, "%04X",
decomp_data[++index]);
i += strlen(decomp + i);
}
decomp[i] = '\0';
return PyUnicode_FromString(decomp);
return PyUnicode_FromStringAndSize(decomp, i);
}
static void

View File

@ -492,7 +492,7 @@ PyTypeObject PyCode_Type = {
int
PyCode_Addr2Line(PyCodeObject *co, int addrq)
{
int size = PyBytes_Size(co->co_lnotab) / 2;
Py_ssize_t size = PyBytes_Size(co->co_lnotab) / 2;
unsigned char *p = (unsigned char*)PyBytes_AsString(co->co_lnotab);
int line = co->co_firstlineno;
int addr = 0;
@ -510,7 +510,8 @@ PyCode_Addr2Line(PyCodeObject *co, int addrq)
int
_PyCode_CheckLineNumber(PyCodeObject* co, int lasti, PyAddrPair *bounds)
{
int size, addr, line;
Py_ssize_t size;
int addr, line;
unsigned char* p;
p = (unsigned char*)PyBytes_AS_STRING(co->co_lnotab);

View File

@ -1381,7 +1381,7 @@ typedef struct s_MergeState {
/* Conceptually a MergeState's constructor. */
static void
merge_init(MergeState *ms, int list_size, int has_keyfunc)
merge_init(MergeState *ms, Py_ssize_t list_size, int has_keyfunc)
{
assert(ms != NULL);
if (has_keyfunc) {

View File

@ -2325,7 +2325,7 @@ PyObject* PyType_FromSpec(PyType_Spec *spec)
res->ht_type.tp_basicsize = spec->basicsize;
res->ht_type.tp_itemsize = spec->itemsize;
res->ht_type.tp_flags = spec->flags | Py_TPFLAGS_HEAPTYPE;
for (slot = spec->slots; slot->slot; slot++) {
if (slot->slot >= sizeof(slotoffsets)/sizeof(slotoffsets[0])) {
PyErr_SetString(PyExc_RuntimeError, "invalid slot offset");
@ -2335,7 +2335,7 @@ PyObject* PyType_FromSpec(PyType_Spec *spec)
}
return (PyObject*)res;
fail:
Py_DECREF(res);
return NULL;
@ -6202,7 +6202,7 @@ super_init(PyObject *self, PyObject *args, PyObject *kwds)
and first local variable on the stack. */
PyFrameObject *f = PyThreadState_GET()->frame;
PyCodeObject *co = f->f_code;
int i, n;
Py_ssize_t i, n;
if (co == NULL) {
PyErr_SetString(PyExc_SystemError,
"super(): no code object");

View File

@ -1202,7 +1202,8 @@ PyRun_SimpleFileExFlags(FILE *fp, const char *filename, int closeit,
{
PyObject *m, *d, *v;
const char *ext;
int set_file_name = 0, ret, len;
int set_file_name = 0, ret;
size_t len;
m = PyImport_AddModule("__main__");
if (m == NULL)