Remove `== TRUE' tests and convert `!= TRUE' and `== FALSE' tests to use !.
[oweals/busybox.git] / coreutils / touch.c
index 1718da71e28fb2d649d83f65d417b90f2633e8a9..f1c6dc4849fd8780a45e3cd70111bea2a6b41444 100644 (file)
@@ -2,9 +2,8 @@
 /*
  * Mini touch implementation for busybox
  *
- *
- * Copyright (C) 1999,2000,2001 by Lineo, inc.
- * Written by Erik Andersen <andersen@lineo.com>, <andersee@debian.org>
+ * Copyright (C) 1999,2000 by Lineo, inc. and Erik Andersen
+ * Copyright (C) 1999,2000,2001 by Erik Andersen <andersee@debian.org>
  *
  * 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
@@ -54,12 +53,14 @@ extern int touch_main(int argc, char **argv)
        }
 
        while (argc > 0) {
-               fd = open(*argv, (create == FALSE) ? O_RDWR : O_RDWR | O_CREAT,
+               fd = open(*argv, create ? O_RDWR | O_CREAT : O_RDWR,
                                S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH);
                if (fd < 0) {
-                       if (create == FALSE && errno == ENOENT)
-                               return EXIT_SUCCESS;
-                       else {
+                       if (! create && errno == ENOENT) {
+                               argc--;
+                               argv++;
+                               continue;
+                       } else {
                                perror_msg_and_die("%s", *argv);
                        }
                }