Fix more 64-bit warnings.
This commit is contained in:
parent
22e4155706
commit
4045575dd5
|
@ -6,10 +6,6 @@ This module provides the low-level underpinnings of a CSV reading/writing
|
||||||
module. Users should not use this module directly, but import the csv.py
|
module. Users should not use this module directly, but import the csv.py
|
||||||
module instead.
|
module instead.
|
||||||
|
|
||||||
**** For people modifying this code, please note that as of this writing
|
|
||||||
**** (2003-03-23), it is intended that this code should work with Python
|
|
||||||
**** 2.2.
|
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define MODULE_VERSION "1.0"
|
#define MODULE_VERSION "1.0"
|
||||||
|
@ -73,7 +69,7 @@ typedef struct {
|
||||||
PyObject *fields; /* field list for current record */
|
PyObject *fields; /* field list for current record */
|
||||||
ParserState state; /* current CSV parse state */
|
ParserState state; /* current CSV parse state */
|
||||||
Py_UNICODE *field; /* build current field in here */
|
Py_UNICODE *field; /* build current field in here */
|
||||||
int field_size; /* size of allocated buffer */
|
Py_ssize_t field_size; /* size of allocated buffer */
|
||||||
Py_ssize_t field_len; /* length of current field */
|
Py_ssize_t field_len; /* length of current field */
|
||||||
int numeric_field; /* treat field as numeric */
|
int numeric_field; /* treat field as numeric */
|
||||||
unsigned long line_num; /* Source-file line number */
|
unsigned long line_num; /* Source-file line number */
|
||||||
|
@ -91,7 +87,7 @@ typedef struct {
|
||||||
DialectObj *dialect; /* parsing dialect */
|
DialectObj *dialect; /* parsing dialect */
|
||||||
|
|
||||||
Py_UNICODE *rec; /* buffer for parser.join */
|
Py_UNICODE *rec; /* buffer for parser.join */
|
||||||
int rec_size; /* size of allocated record */
|
Py_ssize_t rec_size; /* size of allocated record */
|
||||||
Py_ssize_t rec_len; /* length of record */
|
Py_ssize_t rec_len; /* length of record */
|
||||||
int num_fields; /* number of fields in record */
|
int num_fields; /* number of fields in record */
|
||||||
} WriterObj;
|
} WriterObj;
|
||||||
|
@ -533,7 +529,7 @@ parse_grow_buff(ReaderObj *self)
|
||||||
self->field = PyMem_New(Py_UNICODE, self->field_size);
|
self->field = PyMem_New(Py_UNICODE, self->field_size);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (self->field_size > INT_MAX / 2) {
|
if (self->field_size > PY_SSIZE_T_MAX / 2) {
|
||||||
PyErr_NoMemory();
|
PyErr_NoMemory();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -948,13 +944,13 @@ join_reset(WriterObj *self)
|
||||||
/* Calculate new record length or append field to record. Return new
|
/* Calculate new record length or append field to record. Return new
|
||||||
* record length.
|
* record length.
|
||||||
*/
|
*/
|
||||||
static int
|
static Py_ssize_t
|
||||||
join_append_data(WriterObj *self, Py_UNICODE *field, int quote_empty,
|
join_append_data(WriterObj *self, Py_UNICODE *field, int quote_empty,
|
||||||
int *quoted, int copy_phase)
|
int *quoted, int copy_phase)
|
||||||
{
|
{
|
||||||
DialectObj *dialect = self->dialect;
|
DialectObj *dialect = self->dialect;
|
||||||
int i;
|
int i;
|
||||||
int rec_len;
|
Py_ssize_t rec_len;
|
||||||
Py_UNICODE *lineterm;
|
Py_UNICODE *lineterm;
|
||||||
|
|
||||||
#define ADDCH(c) \
|
#define ADDCH(c) \
|
||||||
|
@ -1040,10 +1036,10 @@ join_append_data(WriterObj *self, Py_UNICODE *field, int quote_empty,
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
join_check_rec_size(WriterObj *self, int rec_len)
|
join_check_rec_size(WriterObj *self, Py_ssize_t rec_len)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (rec_len < 0 || rec_len > INT_MAX - MEM_INCR) {
|
if (rec_len < 0 || rec_len > PY_SSIZE_T_MAX - MEM_INCR) {
|
||||||
PyErr_NoMemory();
|
PyErr_NoMemory();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1075,7 +1071,7 @@ join_check_rec_size(WriterObj *self, int rec_len)
|
||||||
static int
|
static int
|
||||||
join_append(WriterObj *self, Py_UNICODE *field, int *quoted, int quote_empty)
|
join_append(WriterObj *self, Py_UNICODE *field, int *quoted, int quote_empty)
|
||||||
{
|
{
|
||||||
int rec_len;
|
Py_ssize_t rec_len;
|
||||||
|
|
||||||
rec_len = join_append_data(self, field, quote_empty, quoted, 0);
|
rec_len = join_append_data(self, field, quote_empty, quoted, 0);
|
||||||
if (rec_len < 0)
|
if (rec_len < 0)
|
||||||
|
@ -1094,7 +1090,7 @@ join_append(WriterObj *self, Py_UNICODE *field, int *quoted, int quote_empty)
|
||||||
static int
|
static int
|
||||||
join_append_lineterminator(WriterObj *self)
|
join_append_lineterminator(WriterObj *self)
|
||||||
{
|
{
|
||||||
int terminator_len;
|
Py_ssize_t terminator_len;
|
||||||
Py_UNICODE *terminator;
|
Py_UNICODE *terminator;
|
||||||
|
|
||||||
terminator_len = PyUnicode_GetSize(self->dialect->lineterminator);
|
terminator_len = PyUnicode_GetSize(self->dialect->lineterminator);
|
||||||
|
@ -1125,7 +1121,7 @@ static PyObject *
|
||||||
csv_writerow(WriterObj *self, PyObject *seq)
|
csv_writerow(WriterObj *self, PyObject *seq)
|
||||||
{
|
{
|
||||||
DialectObj *dialect = self->dialect;
|
DialectObj *dialect = self->dialect;
|
||||||
int len, i;
|
Py_ssize_t len, i;
|
||||||
|
|
||||||
if (!PySequence_Check(seq))
|
if (!PySequence_Check(seq))
|
||||||
return PyErr_Format(error_obj, "sequence expected");
|
return PyErr_Format(error_obj, "sequence expected");
|
||||||
|
|
|
@ -664,7 +664,7 @@ binascii_rlecode_hqx(PyObject *self, PyObject *args)
|
||||||
/* More than 3 in a row. Output RLE. */
|
/* More than 3 in a row. Output RLE. */
|
||||||
*out_data++ = ch;
|
*out_data++ = ch;
|
||||||
*out_data++ = RUNCHAR;
|
*out_data++ = RUNCHAR;
|
||||||
*out_data++ = (unsigned char) inend-in;
|
*out_data++ = (unsigned char) (inend-in);
|
||||||
in = inend-1;
|
in = inend-1;
|
||||||
} else {
|
} else {
|
||||||
/* Less than 3. Output the byte itself */
|
/* Less than 3. Output the byte itself */
|
||||||
|
|
Loading…
Reference in New Issue