util: unify usage of on_tty() in util.c

This commit is contained in:
Lennart Poettering
2012-10-19 00:07:55 +02:00
parent 28917d7dc7
commit 8481248b9f
8 changed files with 19 additions and 62 deletions
+1 -1
View File
@@ -57,7 +57,7 @@ int pager_open(void) {
if (!*pager || streq(pager, "cat"))
return 0;
if (isatty(STDOUT_FILENO) <= 0)
if (!on_tty())
return 0;
/* Determine and cache number of columns before we spawn the
+11 -5
View File
@@ -2175,28 +2175,25 @@ int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) {
}
int ask(char *ret, const char *replies, const char *text, ...) {
bool on_tty;
assert(ret);
assert(replies);
assert(text);
on_tty = isatty(STDOUT_FILENO);
for (;;) {
va_list ap;
char c;
int r;
bool need_nl = true;
if (on_tty)
if (on_tty())
fputs(ANSI_HIGHLIGHT_ON, stdout);
va_start(ap, text);
vprintf(text, ap);
va_end(ap);
if (on_tty)
if (on_tty())
fputs(ANSI_HIGHLIGHT_OFF, stdout);
fflush(stdout);
@@ -3820,6 +3817,15 @@ void columns_cache_reset(int signum) {
cached_columns = 0;
}
bool on_tty(void) {
static int cached_on_tty = -1;
if (_unlikely_(cached_on_tty < 0))
cached_on_tty = isatty(STDOUT_FILENO) > 0;
return cached_on_tty;
}
int fd_lines(int fd) {
struct winsize ws;
zero(ws);
+1
View File
@@ -385,6 +385,7 @@ int status_welcome(void);
int fd_columns(int fd);
unsigned columns(void);
void columns_cache_reset(int _unused_ signum);
bool on_tty(void);
int fd_lines(int fd);
unsigned lines(void);