44 lines
1.5 KiB
Diff
44 lines
1.5 KiB
Diff
|
changeset: 26675:3eb62c576a1a
|
||
|
user: Olaf Hering <olaf@aepfle.de>
|
||
|
date: Wed Feb 27 14:16:36 2013 +0000
|
||
|
files: tools/libxc/xtl_logger_stdio.c
|
||
|
description:
|
||
|
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 <olaf@aepfle.de>
|
||
|
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
|
||
|
|
||
|
|
||
|
diff -r 4b25c1e6cfbb -r 3eb62c576a1a tools/libxc/xtl_logger_stdio.c
|
||
|
--- a/tools/libxc/xtl_logger_stdio.c Wed Feb 27 11:16:47 2013 +0000
|
||
|
+++ b/tools/libxc/xtl_logger_stdio.c Wed Feb 27 14:16:36 2013 +0000
|
||
|
@@ -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
|
||
|
|
||
|
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_creat
|
||
|
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();
|
||
|
|