#include <signal.h>
#include "system.h"
+#include "closeout.h"
#include "argmatch.h"
#include "error.h"
#include "safe-read.h"
with --follow=name, reopen a FILE which has not\n\
changed size after N (default %d) iterations\n\
to see if it has been unlinked or renamed\n\
- (this is the usual case of rotated log files)\n
+ (this is the usual case of rotated log files)\n\
--pid=PID with -f, terminate after process ID, PID dies\n\
-q, --quiet, --silent never output headers giving file names\n\
-s, --sleep-interval=S with -f, each iteration lasts approximately S\n\
}
static void
-write_header (const char *pretty_filename, const char *comment)
+write_header (const char *pretty_filename)
{
static int first_file = 1;
- printf ("%s==> %s%s%s <==\n", (first_file ? "" : "\n"), pretty_filename,
- (comment ? ": " : ""),
- (comment ? comment : ""));
+ printf ("%s==> %s <==\n", (first_file ? "" : "\n"), pretty_filename);
first_file = 0;
}
if (stats.st_size < f[i].size)
{
- write_header (pretty_name (&f[i]), _("file truncated"));
+ error (0, 0, _("%s: file truncated"), pretty_name (&f[i]));
last = i;
/* FIXME: check lseek return value */
lseek (f[i].fd, stats.st_size, SEEK_SET);
if (i != last)
{
if (print_headers)
- write_header (pretty_name (&f[i]), NULL);
+ write_header (pretty_name (&f[i]));
last = i;
}
f[i].size += dump_remainder (pretty_name (&f[i]), f[i].fd,
else
{
if (print_headers)
- write_header (pretty_name (f), NULL);
+ write_header (pretty_name (f));
errors = tail (pretty_name (f), fd, n_units);
if (forever)
{
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
+ atexit (close_stdout);
+
have_read_stdin = 0;
{
if (have_read_stdin && close (0) < 0)
error (EXIT_FAILURE, errno, "-");
- if (fclose (stdout) == EOF)
- error (EXIT_FAILURE, errno, _("write error"));
exit (exit_status == 0 ? EXIT_SUCCESS : EXIT_FAILURE);
}