summaryrefslogtreecommitdiff
path: root/cleopatre/application
diff options
context:
space:
mode:
Diffstat (limited to 'cleopatre/application')
-rw-r--r--cleopatre/application/managerd/src/managerd.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/cleopatre/application/managerd/src/managerd.c b/cleopatre/application/managerd/src/managerd.c
index c9d0e44d4a..cb7db96a52 100644
--- a/cleopatre/application/managerd/src/managerd.c
+++ b/cleopatre/application/managerd/src/managerd.c
@@ -34,7 +34,7 @@
/* Global variable indicating if a SIGHUP signal occurred,
* has been caught in managerd signal handler,
* and has now to be processed. */
-uint8_t is_process_signal_needed;
+volatile sig_atomic_t is_process_signal_needed;
/**
@@ -48,7 +48,7 @@ managerd_signal_handler (int signal_nb)
/* check that we received a SIGHUP signal (other signals must be ignored) */
if (SIGHUP == signal_nb)
{
- is_process_signal_needed++;
+ is_process_signal_needed = 1;
}
}
@@ -250,9 +250,10 @@ static int managerd_process(struct managerd_ctx *ctx)
if (is_process_signal_needed)
{
+ is_process_signal_needed = 0;
+
/* now handle all info file changes (from plcd) */
managerd_process_signal (ctx);
- is_process_signal_needed--;
}
}