shell: Set desktop-shell deathstamp at initial launch
authorKristian Høgsberg <krh@bitplanet.net>
Tue, 17 Jan 2012 16:07:42 +0000 (11:07 -0500)
committerKristian Høgsberg <krh@bitplanet.net>
Tue, 17 Jan 2012 16:07:42 +0000 (11:07 -0500)
Timestamp 0 is a valid timestamp and we can't use that as an uninitialized
timestamp.

src/shell.c

index c0d8b8d..0dd4ba5 100644 (file)
@@ -1281,8 +1281,7 @@ desktop_shell_sigchld(struct weston_process *process, int status)
 
        /* if desktop-shell dies more than 5 times in 30 seconds, give up */
        time = weston_compositor_get_time();
-       if (shell->child.deathstamp == 0 ||
-           time - shell->child.deathstamp > 30000) {
+       if (time - shell->child.deathstamp > 30000) {
                shell->child.deathstamp = time;
                shell->child.deathcount = 0;
        }
@@ -1464,6 +1463,7 @@ shell_init(struct weston_compositor *ec)
                                  shell, bind_screensaver) == NULL)
                return -1;
 
+       shell->child.deathstamp = weston_compositor_get_time();
        if (launch_desktop_shell_process(shell) != 0)
                return -1;