From: Johan Herland Date: Tue, 15 May 2007 12:49:22 +0000 (+0200) Subject: Ensure return value from xread() is always stored into an ssize_t X-Git-Tag: v1.5.2~23 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=8a912bcb250d8bf57b225e1cf02c0d69d54c8920;p=git.git Ensure return value from xread() is always stored into an ssize_t This patch fixes all calls to xread() where the return value is not stored into an ssize_t. The patch should not have any effect whatsoever, other than putting better/more appropriate type names on variables. Signed-off-by: Johan Herland Signed-off-by: Junio C Hamano --- diff --git a/builtin-apply.c b/builtin-apply.c index 8b8705a6c..0399743c4 100644 --- a/builtin-apply.c +++ b/builtin-apply.c @@ -185,7 +185,7 @@ static void *read_patch_file(int fd, unsigned long *sizep) void *buffer = xmalloc(alloc); for (;;) { - int nr = alloc - size; + ssize_t nr = alloc - size; if (nr < 1024) { alloc += CHUNKSIZE; buffer = xrealloc(buffer, alloc); @@ -1468,7 +1468,7 @@ static int read_old_data(struct stat *st, const char *path, char **buf_p, unsign return error("unable to open %s", path); got = 0; for (;;) { - int ret = xread(fd, buf + got, size - got); + ssize_t ret = xread(fd, buf + got, size - got); if (ret <= 0) break; got += ret; diff --git a/builtin-bundle.c b/builtin-bundle.c index d1635a0a6..306ad2959 100644 --- a/builtin-bundle.c +++ b/builtin-bundle.c @@ -48,7 +48,7 @@ static int read_string(int fd, char *buffer, int size) { int i; for (i = 0; i < size - 1; i++) { - int count = xread(fd, buffer + i, 1); + ssize_t count = xread(fd, buffer + i, 1); if (count < 0) return error("Read error: %s", strerror(errno)); if (count == 0) { diff --git a/builtin-fetch--tool.c b/builtin-fetch--tool.c index 2065466f2..12adb3833 100644 --- a/builtin-fetch--tool.c +++ b/builtin-fetch--tool.c @@ -6,11 +6,11 @@ static char *get_stdin(void) { - int offset = 0; + size_t offset = 0; char *data = xmalloc(CHUNK_SIZE); while (1) { - int cnt = xread(0, data + offset, CHUNK_SIZE); + ssize_t cnt = xread(0, data + offset, CHUNK_SIZE); if (cnt < 0) die("error reading standard input: %s", strerror(errno)); diff --git a/builtin-unpack-objects.c b/builtin-unpack-objects.c index 2bbda67fa..a6ff62fd8 100644 --- a/builtin-unpack-objects.c +++ b/builtin-unpack-objects.c @@ -34,7 +34,7 @@ static void *fill(int min) offset = 0; } do { - int ret = xread(0, buffer + len, sizeof(buffer) - len); + ssize_t ret = xread(0, buffer + len, sizeof(buffer) - len); if (ret <= 0) { if (!ret) die("early EOF"); diff --git a/combine-diff.c b/combine-diff.c index cff9c5dc4..ea3ca5f95 100644 --- a/combine-diff.c +++ b/combine-diff.c @@ -714,7 +714,7 @@ static void show_patch_diff(struct combine_diff_path *elem, int num_parent, result_size = len; result = xmalloc(len + 1); while (sz < len) { - int done = xread(fd, result+sz, len-sz); + ssize_t done = xread(fd, result+sz, len-sz); if (done == 0) break; if (done < 0) diff --git a/copy.c b/copy.c index 08a3d388a..d340bb253 100644 --- a/copy.c +++ b/copy.c @@ -3,10 +3,9 @@ int copy_fd(int ifd, int ofd) { while (1) { - int len; char buffer[8192]; char *buf = buffer; - len = xread(ifd, buffer, sizeof(buffer)); + ssize_t len = xread(ifd, buffer, sizeof(buffer)); if (!len) break; if (len < 0) { diff --git a/diff.c b/diff.c index 8354e71e0..33297aa8a 100644 --- a/diff.c +++ b/diff.c @@ -1411,7 +1411,7 @@ static int populate_from_stdin(struct diff_filespec *s) #define INCREMENT 1024 char *buf; unsigned long size; - int got; + ssize_t got; size = 0; buf = NULL; diff --git a/imap-send.c b/imap-send.c index 84df2fabb..4283a4acd 100644 --- a/imap-send.c +++ b/imap-send.c @@ -224,7 +224,7 @@ socket_perror( const char *func, Socket_t *sock, int ret ) static int socket_read( Socket_t *sock, char *buf, int len ) { - int n = xread( sock->fd, buf, len ); + ssize_t n = xread( sock->fd, buf, len ); if (n <= 0) { socket_perror( "read", sock, n ); close( sock->fd ); diff --git a/index-pack.c b/index-pack.c index b9da19f55..58c4a9c41 100644 --- a/index-pack.c +++ b/index-pack.c @@ -82,7 +82,7 @@ static void *fill(int min) die("cannot fill %d bytes", min); flush(); do { - int ret = xread(input_fd, input_buffer + input_len, + ssize_t ret = xread(input_fd, input_buffer + input_len, sizeof(input_buffer) - input_len); if (ret <= 0) { if (!ret) diff --git a/pkt-line.c b/pkt-line.c index b4cb7e275..b60526869 100644 --- a/pkt-line.c +++ b/pkt-line.c @@ -65,10 +65,10 @@ void packet_write(int fd, const char *fmt, ...) static void safe_read(int fd, void *buffer, unsigned size) { - int n = 0; + size_t n = 0; while (n < size) { - int ret = xread(fd, (char *) buffer + n, size - n); + ssize_t ret = xread(fd, (char *) buffer + n, size - n); if (ret < 0) die("read error (%s)", strerror(errno)); if (!ret) diff --git a/sha1_file.c b/sha1_file.c index 32244d704..be991ed22 100644 --- a/sha1_file.c +++ b/sha1_file.c @@ -2276,7 +2276,7 @@ int read_pipe(int fd, char** return_buf, unsigned long* return_size) { char* buf = *return_buf; unsigned long size = *return_size; - int iret; + ssize_t iret; unsigned long off = 0; do { diff --git a/ssh-upload.c b/ssh-upload.c index 2f0457278..498d41e19 100644 --- a/ssh-upload.c +++ b/ssh-upload.c @@ -86,7 +86,7 @@ static int serve_ref(int fd_in, int fd_out) static void service(int fd_in, int fd_out) { char type; - int retval; + ssize_t retval; do { retval = xread(fd_in, &type, 1); if (retval < 1) {