Ack
/Hans

> -----Original Message-----
> From: Hans Nordebäck
> Sent: den 10 december 2013 10:38
> To: Anders Widell; Hans Feldt; [email protected]
> Cc: [email protected]
> Subject: [PATCH 1 of 1] base: use _Exit instead of exit in daemon_exit #581
> 
>  osaf/libs/core/common/daemon.c |  8 +++++++-
>  1 files changed, 7 insertions(+), 1 deletions(-)
> 
> 
> use _Exit instead of exit in daemon_exit. The change was done due to
> that exit() is not thread safe, see e.g. ticket #651.
> To make it possible to dump e.g. coverage data on termination
> a weak reference to __gcov_flush has been added.
> 
> diff --git a/osaf/libs/core/common/daemon.c b/osaf/libs/core/common/daemon.c
> --- a/osaf/libs/core/common/daemon.c
> +++ b/osaf/libs/core/common/daemon.c
> @@ -43,6 +43,8 @@
> 
>  #define DEFAULT_RUNAS_USERNAME       "opensaf"
> 
> +extern  void __gcov_flush(void) __attribute__((weak));
> +
>  static char __pidfile[NAME_MAX];
>  static char __tracefile[NAME_MAX];
>  static char __runas_username[UT_NAMESIZE];
> @@ -364,7 +366,11 @@ static void sigterm_handler(int sig)
>  void daemon_exit(void)
>  {
>       syslog(LOG_NOTICE, "exiting on signal %d", SIGTERM);
> -     exit(0);
> +
> +     if (__gcov_flush) {
> +             __gcov_flush();
> +     }
> +     _Exit(0);
>  }
> 
>  /**

------------------------------------------------------------------------------
Sponsored by Intel(R) XDK 
Develop, test and display web and hybrid apps with a single code base.
Download it for free now!
http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to