Merged revisions 75258 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r75258 | amaury.forgeotdarc | 2009-10-05 22:18:05 +0200 (lun., 05 oct. 2009) | 2 lines

  Fix compilation warning on Windows, where size_t is 32bit but file offsets are 64bit.
........
This commit is contained in:
Amaury Forgeot d'Arc 2009-10-05 21:09:00 +00:00
parent 7e2ef573ed
commit e1b60d4849
1 changed files with 7 additions and 6 deletions

View File

@ -1688,7 +1688,8 @@ bufferedwriter_write(buffered *self, PyObject *args)
{ {
PyObject *res = NULL; PyObject *res = NULL;
Py_buffer buf; Py_buffer buf;
Py_ssize_t written, avail, remaining, n; Py_ssize_t written, avail, remaining;
Py_off_t offset;
CHECK_INITIALIZED(self) CHECK_INITIALIZED(self)
if (!PyArg_ParseTuple(args, "y*:write", &buf)) { if (!PyArg_ParseTuple(args, "y*:write", &buf)) {
@ -1763,18 +1764,18 @@ bufferedwriter_write(buffered *self, PyObject *args)
the raw stream by itself). the raw stream by itself).
Fixes issue #6629. Fixes issue #6629.
*/ */
n = RAW_OFFSET(self); offset = RAW_OFFSET(self);
if (n != 0) { if (offset != 0) {
if (_buffered_raw_seek(self, -n, 1) < 0) if (_buffered_raw_seek(self, -offset, 1) < 0)
goto error; goto error;
self->raw_pos -= n; self->raw_pos -= offset;
} }
/* Then write buf itself. At this point the buffer has been emptied. */ /* Then write buf itself. At this point the buffer has been emptied. */
remaining = buf.len; remaining = buf.len;
written = 0; written = 0;
while (remaining > self->buffer_size) { while (remaining > self->buffer_size) {
n = _bufferedwriter_raw_write( Py_ssize_t n = _bufferedwriter_raw_write(
self, (char *) buf.buf + written, buf.len - written); self, (char *) buf.buf + written, buf.len - written);
if (n == -1) { if (n == -1) {
Py_ssize_t *w = _buffered_check_blocking_error(); Py_ssize_t *w = _buffered_check_blocking_error();