From c3978b5bfb90f100d1a04c613191c6b5bf7a7e7e Mon Sep 17 00:00:00 2001 From: Alex Badea Date: Sun, 20 Jun 2010 00:13:30 +0300 Subject: [PATCH] applet: on Test, fork after fetching values from config --- src/applet.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/applet.c b/src/applet.c index 86762a4..e3ff2a7 100644 --- a/src/applet.c +++ b/src/applet.c @@ -89,13 +89,6 @@ static void do_test(struct espeaktime_settings *cfg) int res; pid_t pid; - pid = fork(); - if (pid < 0) { - perror("fork"); - return; - } - if (pid) - return; time(&t); tm = localtime(&t); @@ -105,6 +98,14 @@ static void do_test(struct espeaktime_settings *cfg) g_snprintf(vstr, sizeof(vstr), "%s%s%s", cfg->voice, (*cfg->effect) ? "+" : "", cfg->effect); strftime(text, sizeof(text), cfg->text, tm); + + pid = fork(); + if (pid < 0) { + perror("fork"); + return; + } + if (pid) + return; g_print("execlp: -a '%s' -p '%s' -v '%s' '%s'\n", astr, pstr, sstr, vstr, text); res = execlp(ESPEAK_BIN, ESPEAK_BIN, -- 1.7.9.5