aboutsummaryrefslogtreecommitdiff
path: root/fdflush.c
diff options
context:
space:
mode:
Diffstat (limited to 'fdflush.c')
-rw-r--r--fdflush.c36
1 files changed, 19 insertions, 17 deletions
diff --git a/fdflush.c b/fdflush.c
index a244e8def..0b154c8a6 100644
--- a/fdflush.c
+++ b/fdflush.c
@@ -1,3 +1,4 @@
1/* vi: set sw=4 ts=4: */
1/* 2/*
2 * Mini fdflush implementation for busybox 3 * Mini fdflush implementation for busybox
3 * 4 *
@@ -29,24 +30,25 @@
29 30
30extern int fdflush_main(int argc, char **argv) 31extern int fdflush_main(int argc, char **argv)
31{ 32{
32 int value; 33 int value;
33 int fd; 34 int fd;
34 if ( argc <= 1 || **(argv++) == '-' ) {
35 usage( "fdflush device\n");
36 }
37 35
38 fd = open(*argv, 0); 36 if (argc <= 1 || **(argv++) == '-') {
39 if ( fd < 0 ) { 37 usage("fdflush device\n");
40 perror(*argv); 38 }
41 exit(FALSE);
42 }
43 39
44 value = ioctl(fd, FDFLUSH, 0); 40 fd = open(*argv, 0);
45 close(fd); 41 if (fd < 0) {
42 perror(*argv);
43 exit(FALSE);
44 }
46 45
47 if ( value ) { 46 value = ioctl(fd, FDFLUSH, 0);
48 perror(*argv); 47 close(fd);
49 exit(FALSE); 48
50 } 49 if (value) {
51 exit (TRUE); 50 perror(*argv);
51 exit(FALSE);
52 }
53 exit(TRUE);
52} 54}