X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/7e4b6b7bc47b8ac00fa295ed60e6e13e28fd1a8a..b3bf9b9df95137a3a43248be9599d919b04877af:/fileio.c diff --git a/fileio.c b/fileio.c index bf640e20..0faa6195 100644 --- a/fileio.c +++ b/fileio.c @@ -3,7 +3,7 @@ * * Copyright (C) 1998 Andrew Tridgell * Copyright (C) 2002 Martin Pool - * Copyright (C) 2004-2007 Wayne Davison + * Copyright (C) 2004-2009 Wayne Davison * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -20,6 +20,7 @@ */ #include "rsync.h" +#include "inums.h" #ifndef ENODATA #define ENODATA EAGAIN @@ -28,7 +29,7 @@ extern int sparse_files; static char last_byte; -static size_t sparse_seek = 0; +static OFF_T sparse_seek = 0; int sparse_end(int f) { @@ -48,9 +49,9 @@ int sparse_end(int f) } -static int write_sparse(int f, char *buf, size_t len) +static int write_sparse(int f, char *buf, int len) { - size_t l1 = 0, l2 = 0; + int l1 = 0, l2 = 0; int ret; for (l1 = 0; l1 < len && buf[l1] == 0; l1++) {} @@ -108,7 +109,7 @@ int flush_write_file(int f) * write_file does not allow incomplete writes. It loops internally * until len bytes are written or errno is set. */ -int write_file(int f,char *buf,size_t len) +int write_file(int f, char *buf, int len) { int ret = 0; @@ -125,7 +126,7 @@ int write_file(int f,char *buf,size_t len) if (!wf_writeBuf) out_of_memory("write_file"); } - r1 = MIN(len, wf_writeBufSize - wf_writeBufCnt); + r1 = (int)MIN((size_t)len, wf_writeBufSize - wf_writeBufCnt); if (r1) { memcpy(wf_writeBuf + wf_writeBufCnt, buf, r1); wf_writeBufCnt += r1; @@ -232,8 +233,8 @@ char *map_ptr(struct map_struct *map, OFF_T offset, int32 len) if (map->p_fd_offset != read_start) { OFF_T ret = do_lseek(map->fd, read_start, SEEK_SET); if (ret != read_start) { - rsyserr(FERROR, errno, "lseek returned %.0f, not %.0f", - (double)ret, (double)read_start); + rsyserr(FERROR, errno, "lseek returned %s, not %s", + big_num(ret), big_num(read_start)); exit_cleanup(RERR_FILEIO); } map->p_fd_offset = read_start;