commit 71154d42aa8909854d3f292dcfc49da5c915a207
Author: Michael Forney <[email protected]>
AuthorDate: Thu Feb 20 21:39:28 2020 -0800
Commit: Michael Forney <[email protected]>
CommitDate: Thu Feb 20 21:47:26 2020 -0800
sed: Simplify next_file slightly
diff --git a/sed.c b/sed.c
index b419c56..2f4eae2 100644
--- a/sed.c
+++ b/sed.c
@@ -1119,23 +1119,20 @@ next_file(void)
clearerr(file);
else if (file)
fshut(file, "<file>");
- file = NULL;
-
- do {
- if (!*files) {
- if (first) /* given no files, default to stdin */
- file = stdin;
- /* else we've used all our files, leave file = NULL */
- } else if (!strcmp(*files, "-")) {
+ /* given no files, default to stdin */
+ file = first && !*files ? stdin : NULL;
+ first = 0;
+
+ while (!file && *files) {
+ if (!strcmp(*files, "-")) {
file = stdin;
- files++;
- } else if (!(file = fopen(*files++, "r"))) {
+ } else if (!(file = fopen(*files, "r"))) {
/* warn this file didn't open, but move on to next */
weprintf("fopen:");
ret = 1;
}
- } while (!file && *files);
- first = 0;
+ files++;
+ }
return !file;
}