On Sat, Mar 09, 2013 at 07:38:57PM +0100, Philipp Brüschweiler wrote:
> Partial fix for https://bugs.freedesktop.org/show_bug.cgi?id=60935. The
> correct code is now returned, but I can't reproduce the SIGHUP using the
> fbdev backend.

Yes, something like this should work, thanks.

Kristian

> ---
>  src/weston-launch.c | 15 +++++++++++++--
>  1 file changed, 13 insertions(+), 2 deletions(-)
> 
> diff --git a/src/weston-launch.c b/src/weston-launch.c
> index 98f0111..52082cf 100644
> --- a/src/weston-launch.c
> +++ b/src/weston-launch.c
> @@ -420,7 +420,7 @@ static int
>  handle_signal(struct weston_launch *wl)
>  {
>       struct signalfd_siginfo sig;
> -     int pid, status;
> +     int pid, status, ret;
>  
>       if (read(wl->signalfd, &sig, sizeof sig) != sizeof sig) {
>               error(0, errno, "reading signalfd failed");
> @@ -432,7 +432,18 @@ handle_signal(struct weston_launch *wl)
>               pid = waitpid(-1, &status, 0);
>               if (pid == wl->child) {
>                       wl->child = 0;
> -                     quit(wl, WIFEXITED(status) ? WEXITSTATUS(status) : 0);
> +                     if (WIFEXITED(status))
> +                             ret = WEXITSTATUS(status);
> +                     else if (WIFSIGNALED(status))
> +                             /*
> +                              * This seems to be a widely used convention,
> +                              * at least bash handles termination by signal
> +                              * like this (see man bash).
> +                              */
> +                             ret = 128 + WTERMSIG(status);
> +                     else
> +                             ret = 0;
> +                     quit(wl, ret);
>               }
>               break;
>       case SIGTERM:
> -- 
> 1.8.1.5
> 
> _______________________________________________
> wayland-devel mailing list
> [email protected]
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel
_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to