From 2f80ac9c0e8fe117b3e9cf71f799b482c6ca312f Mon Sep 17 00:00:00 2001 From: Olaf Hering Date: Wed, 27 Feb 2013 14:16:36 +0000 Subject: tools/xentoollog: update tty detection in stdiostream_progress As suggested by IanJ: Check isatty only once to preserve the errno of ->progress users, and to reduce the noice in strace output. Signed-off-by: Olaf Hering Acked-by: Ian Jackson --- tools/libxc/xtl_logger_stdio.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'tools/libxc') diff --git a/tools/libxc/xtl_logger_stdio.c b/tools/libxc/xtl_logger_stdio.c index 25b2464e72..2e73c862b9 100644 --- a/tools/libxc/xtl_logger_stdio.c +++ b/tools/libxc/xtl_logger_stdio.c @@ -35,6 +35,7 @@ struct xentoollog_logger_stdiostream { xentoollog_level min_level; unsigned flags; int progress_erase_len, progress_last_percent; + int tty; }; static void progress_erase(xentoollog_logger_stdiostream *lg) { @@ -118,7 +119,7 @@ static void stdiostream_progress(struct xentoollog_logger *logger_in, lg->progress_last_percent = percent; - if (isatty(fileno(lg->f)) <= 0) { + if (!lg->tty) { stdiostream_message(logger_in, this_level, context, "%s: %lu/%lu %3d%%", doing_what, done, total, percent); @@ -166,6 +167,7 @@ xentoollog_logger_stdiostream *xtl_createlogger_stdiostream newlogger.f = f; newlogger.min_level = min_level; newlogger.flags = flags; + newlogger.tty = isatty(fileno(newlogger.f)) > 0; if (newlogger.flags & XTL_STDIOSTREAM_SHOW_DATE) tzset(); -- cgit v1.2.3