From d9abff1e84d0c1ea41cfa2305502cb3d0a76ba34 Mon Sep 17 00:00:00 2001 From: sin Date: Tue, 12 Nov 2013 10:44:37 +0000 Subject: [PATCH] Don't exit on the first file that can't be opened for head and fold --- fold.c | 9 +++++++-- head.c | 8 ++++++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/fold.c b/fold.c index d327c62..4dfaf11 100644 --- a/fold.c +++ b/fold.c @@ -1,8 +1,10 @@ /* See LICENSE file for copyright and license details. */ #include +#include #include #include #include +#include #include #include "text.h" #include "util.h" @@ -45,8 +47,11 @@ main(int argc, char *argv[]) if(argc == 0) { fold(stdin, width); } else for(; argc > 0; argc--, argv++) { - if(!(fp = fopen(argv[0], "r"))) - eprintf("fopen %s:", argv[0]); + if(!(fp = fopen(argv[0], "r"))) { + fprintf(stderr, "fopen %s: %s\n", argv[0], + strerror(errno)); + continue; + } fold(fp, width); fclose(fp); } diff --git a/head.c b/head.c index 8011151..6578f89 100644 --- a/head.c +++ b/head.c @@ -1,4 +1,5 @@ /* See LICENSE file for copyright and license details. */ +#include #include #include #include @@ -33,8 +34,11 @@ main(int argc, char *argv[]) if(argc == 0) { head(stdin, "", n); } else for(; argc > 0; argc--, argv++) { - if(!(fp = fopen(argv[0], "r"))) - eprintf("fopen %s:", argv[0]); + if(!(fp = fopen(argv[0], "r"))) { + fprintf(stderr, "fopen %s: %s\n", argv[0], + strerror(errno)); + continue; + } head(fp, argv[0], n); fclose(fp); }