Commit bda1c86d authored by Walter Dörwald's avatar Walter Dörwald

Use size_t instead of int for various variables to prevent

signed/unsigned comparison warnings on the call to iconv().

Fix comment typos.

From SF patch #680146.
parent dbaba0d0
...@@ -42,7 +42,7 @@ PyDoc_STRVAR(iconvcodec_doc, "iconvcodec object"); ...@@ -42,7 +42,7 @@ PyDoc_STRVAR(iconvcodec_doc, "iconvcodec object");
staticforward PyTypeObject iconvcodec_Type; staticforward PyTypeObject iconvcodec_Type;
/* does the choosen internal encoding require /* does the chosen internal encoding require
* byteswapping to get native endianness? * byteswapping to get native endianness?
* 0=no, 1=yes, -1=unknown */ * 0=no, 1=yes, -1=unknown */
static int byteswap = -1; static int byteswap = -1;
...@@ -146,7 +146,7 @@ iconvcodec_encode(iconvcodecObject *self, PyObject *args, PyObject *kwargs) ...@@ -146,7 +146,7 @@ iconvcodec_encode(iconvcodecObject *self, PyObject *args, PyObject *kwargs)
} }
while (inplen > 0) { while (inplen > 0) {
if (iconv(self->enchdl, (char**)&inp, &inplen, &out, &outlen) == -1) { if (iconv(self->enchdl, (char**)&inp, &inplen, &out, &outlen) == (size_t)-1) {
char reason[128]; char reason[128];
int errpos; int errpos;
...@@ -353,7 +353,7 @@ iconvcodec_decode(iconvcodecObject *self, PyObject *args, PyObject *kwargs) ...@@ -353,7 +353,7 @@ iconvcodec_decode(iconvcodecObject *self, PyObject *args, PyObject *kwargs)
} }
while (inplen > 0) { while (inplen > 0) {
char *oldout = out; char *oldout = out;
char res = iconv(self->dechdl, (char**)&inp, &inplen, &out, &outlen); size_t res = iconv(self->dechdl, (char**)&inp, &inplen, &out, &outlen);
if (byteswap) { if (byteswap) {
while (oldout < out) while (oldout < out)
...@@ -372,7 +372,7 @@ iconvcodec_decode(iconvcodecObject *self, PyObject *args, PyObject *kwargs) ...@@ -372,7 +372,7 @@ iconvcodec_decode(iconvcodecObject *self, PyObject *args, PyObject *kwargs)
oldout += sizeof(Py_UNICODE); oldout += sizeof(Py_UNICODE);
} }
} }
if (res == -1) { if (res == (size_t)-1) {
char reason[128], *reasonpos = (char *)reason; char reason[128], *reasonpos = (char *)reason;
int errpos; int errpos;
...@@ -662,11 +662,11 @@ init_iconv_codec(void) ...@@ -662,11 +662,11 @@ init_iconv_codec(void)
char in = 1; char in = 1;
char *inptr = &in; char *inptr = &in;
int insize = 1; size_t insize = 1;
Py_UNICODE out = 0; Py_UNICODE out = 0;
char *outptr = (char *)&out; char *outptr = (char *)&out;
int outsize = sizeof(out); size_t outsize = sizeof(out);
int res; size_t res;
iconv_t hdl = iconv_open(UNICODE_ENCODING, "ASCII"); iconv_t hdl = iconv_open(UNICODE_ENCODING, "ASCII");
...@@ -674,10 +674,10 @@ init_iconv_codec(void) ...@@ -674,10 +674,10 @@ init_iconv_codec(void)
Py_FatalError("can't initialize the _iconv_codec module: iconv_open() failed"); Py_FatalError("can't initialize the _iconv_codec module: iconv_open() failed");
res = iconv(hdl, &inptr, &insize, &outptr, &outsize); res = iconv(hdl, &inptr, &insize, &outptr, &outsize);
if (res == -1) if (res == (size_t)-1)
Py_FatalError("can't initialize the _iconv_codec module: iconv() failed"); Py_FatalError("can't initialize the _iconv_codec module: iconv() failed");
/* Check whether conv() returned native endianess or not for the choosen encoding */ /* Check whether conv() returned native endianess or not for the chosen encoding */
if (out == 0x1) if (out == 0x1)
byteswap = 0; byteswap = 0;
#if Py_UNICODE_SIZE == 2 #if Py_UNICODE_SIZE == 2
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment