Continue processing files if we are asked to touch, but not create, a file
authorMatt Kraai <kraai@debian.org>
Fri, 7 Dec 2001 21:27:38 +0000 (21:27 -0000)
committerMatt Kraai <kraai@debian.org>
Fri, 7 Dec 2001 21:27:38 +0000 (21:27 -0000)
which doesn't exist.

coreutils/touch.c

index 2673495..3e2e600 100644 (file)
@@ -56,9 +56,11 @@ extern int touch_main(int argc, char **argv)
                fd = open(*argv, (create == FALSE) ? O_RDWR : O_RDWR | O_CREAT,
                                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 == FALSE && errno == ENOENT) {
+                               argc--;
+                               argv++;
+                               continue;
+                       } else {
                                perror_msg_and_die("%s", *argv);
                        }
                }