btrfs-progs: send: clean types in write_buf
authorDavid Sterba <dsterba@suse.com>
Wed, 2 Nov 2016 13:04:06 +0000 (14:04 +0100)
committerDavid Sterba <dsterba@suse.com>
Wed, 9 Nov 2016 12:47:31 +0000 (13:47 +0100)
Use matching types for buffer, return value and buffer sizes.

Signed-off-by: David Sterba <dsterba@suse.com>
cmds-send.c

index bf1d973..5fe8789 100644 (file)
@@ -195,24 +195,26 @@ static int add_clone_source(struct btrfs_send *s, u64 root_id)
        return 0;
 }
 
-static int write_buf(int fd, const void *buf, int size)
+static int write_buf(int fd, const char *buf, size_t size)
 {
        int ret;
-       int pos = 0;
+       size_t pos = 0;
 
        while (pos < size) {
-               ret = write(fd, (char*)buf + pos, size - pos);
-               if (ret < 0) {
+               ssize_t wbytes;
+
+               wbytes = write(fd, buf + pos, size - pos);
+               if (wbytes < 0) {
                        ret = -errno;
                        error("failed to dump stream: %s", strerror(-ret));
                        goto out;
                }
-               if (!ret) {
+               if (!wbytes) {
                        ret = -EIO;
                        error("failed to dump stream: %s", strerror(-ret));
                        goto out;
                }
-               pos += ret;
+               pos += wbytes;
        }
        ret = 0;