From 38389139df0d6fd5a2c3c6845f7c2142521c3885 Mon Sep 17 00:00:00 2001 From: Andre Date: Sun, 26 Feb 2006 17:17:05 +0100 Subject: [PATCH] simplify open_audiod_pipe(), remove a trailing newline which caused the top window to flicker if para_audiod is not running. --- gui.c | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) diff --git a/gui.c b/gui.c index 351748e4..1e6739a2 100644 --- a/gui.c +++ b/gui.c @@ -841,25 +841,17 @@ static void handle_signal(int sig) } } -/* open pipe if last attempt to open was more than 2 secs ago */ static int open_audiod_pipe(void) { - static time_t open_time, *p; - time_t now; - double diff; - - if (p) { - time(&now); - diff = difftime(now, open_time); - if (diff < 2) - return -1; - } else - p = &open_time; - time(&open_time); + static int init = 1; + + if (init) + init = 0; + else + sleep(1); return para_open_audiod_pipe(conf.stat_cmd_arg); } - /* * This is the core select loop. Besides the (internal) signal * pipe, the following other fds are checked according to the mode: @@ -936,10 +928,9 @@ repeat: audiod_pipe = -1; clear_all_items(); free(stat_content[SI_STATUS_BAR]); - stat_content[SI_STATUS_BAR] = - para_strdup("audiod not running!?\n"); + stat_content[SI_STATUS_BAR] = + para_strdup("audiod not running!?"); print_all_items(); - sleep(1); } check_return: switch (mode) { -- 2.39.2