Merge "Fix race condition between restart and stop/reset."

am: ee14225e0d

Change-Id: Ia49e967f5fb7fc58058c260fcad4559b2a4df15d
This commit is contained in:
Tao Wu 2017-10-27 21:48:15 +00:00 committed by android-build-merger
commit 5c5a6bdc87

View file

@ -960,6 +960,13 @@ void Service::StopOrReset(int how) {
} else {
flags_ |= how;
}
// Make sure it's in right status when a restart immediately follow a
// stop/reset or vice versa.
if (how == SVC_RESTART) {
flags_ &= (~(SVC_DISABLED | SVC_RESET));
} else {
flags_ &= (~SVC_RESTART);
}
if (pid_) {
KillProcessGroup(SIGKILL);