diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/tail.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/tail.c b/src/tail.c index 3023dd4df..0c9c3e882 100644 --- a/src/tail.c +++ b/src/tail.c @@ -981,8 +981,7 @@ recheck (struct File_spec *f, bool blocking) ok = false; f->errnum = -1; f->tailable = false; - if (! (reopen_inaccessible_files && follow_mode == Follow_name)) - f->ignore = true; + f->ignore = ! (reopen_inaccessible_files && follow_mode == Follow_name); if (was_tailable || prev_errnum != f->errnum) error (0, 0, _("%s has been replaced with an untailable file%s"), quoteaf (pretty_name (f)), @@ -1940,6 +1939,7 @@ tail_file (struct File_spec *f, uintmax_t n_units) ok = false; f->errnum = -1; f->tailable = false; + f->ignore = ! reopen_inaccessible_files; error (0, 0, _("%s: cannot follow end of this type of file%s"), quotef (pretty_name (f)), f->ignore ? _("; giving up on this name") : ""); @@ -1947,8 +1947,7 @@ tail_file (struct File_spec *f, uintmax_t n_units) if (!ok) { - f->ignore = ! (reopen_inaccessible_files - && follow_mode == Follow_name); + f->ignore = ! reopen_inaccessible_files; close_fd (fd, pretty_name (f)); f->fd = -1; } |