]> git.sesse.net Git - bcachefs-tools-debian/commitdiff
cmd_fsck: Collect return code of kernel fsck with close()
authorKent Overstreet <kent.overstreet@linux.dev>
Sun, 18 Feb 2024 01:57:07 +0000 (20:57 -0500)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 18 Feb 2024 04:31:47 +0000 (23:31 -0500)
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Makefile
c_src/cmd_fsck.c

index 876efbb7bc32f6dedc0d7804297dd976a7d3e0f1..8e850ec4477417c17ce8fe5a1b6a3d2b93bdf216 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-VERSION=1.4.0
+VERSION=1.6.2
 
 PREFIX?=/usr/local
 LIBEXECDIR?=$(PREFIX)/libexec
index 321463caf5768df4eedc05cdb4a85d506216a62b..0d4070a3a1afadbd66b15a393d0e527c74916826 100644 (file)
@@ -70,15 +70,17 @@ static int splice_fd_to_stdinout(int fd)
                select(fd + 1, &fds, NULL, NULL, NULL);
 
                int r = do_splice(fd, STDOUT_FILENO);
+               if (r < 0)
+                       return r;
                if (r)
-                       return r < 0 ? r : 0;
+                       break;
 
                r = do_splice(STDIN_FILENO, fd);
                if (r < 0)
                        return r;
        }
 
-       return 0;
+       return close(fd);
 }
 
 static int fsck_online(const char *dev_path)