From 0749734769cd1bf9aca1152ffb9790bf11ac3b9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Sat, 21 Dec 2019 17:29:11 +0100 Subject: [PATCH] launch_daemon: don't relaunch when a shutdown is in progress Change-Id: Ice0dd504f65f592eb64ec0e2192ef42b88486daa Reviewed-on: https://review.haiku-os.org/c/haiku/+/2043 Reviewed-by: waddlesplash --- src/servers/launch/LaunchDaemon.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/servers/launch/LaunchDaemon.cpp b/src/servers/launch/LaunchDaemon.cpp index 6d00ed052d..411f09a771 100644 --- a/src/servers/launch/LaunchDaemon.cpp +++ b/src/servers/launch/LaunchDaemon.cpp @@ -527,9 +527,15 @@ LaunchDaemon::MessageReceived(BMessage* message) job->TeamDeleted(); if (job->IsService()) { - // TODO: take restart throttle into account - // TODO: don't restart on shutdown - _LaunchJob(job); + bool inProgress = false; + BRoster roster; + BRoster::Private rosterPrivate(roster); + status_t status = rosterPrivate.IsShutDownInProgress( + &inProgress); + if (status != B_OK || !inProgress) { + // TODO: take restart throttle into account + _LaunchJob(job); + } } } break;