X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcore%2Fsocket.c;h=5f16493bc224d167437ea439a725ee29bbdc60cf;hb=5ba6985b6c8ef85a8bcfeb1b65239c863436e75b;hp=7eac0eb66de22a7489dd76dc9a05fefde774581d;hpb=68db7a3bd9b2f8640c7297382b6d20eb995f7e1e;p=elogind.git diff --git a/src/core/socket.c b/src/core/socket.c index 7eac0eb66..5f16493bc 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -1344,8 +1344,12 @@ static void socket_enter_signal(Socket *s, SocketState state, SocketResult f) { goto fail; socket_set_state(s, state); - } else if (state == SOCKET_STOP_PRE_SIGTERM || state == SOCKET_STOP_PRE_SIGKILL) + } else if (state == SOCKET_STOP_PRE_SIGTERM) + socket_enter_signal(s, SOCKET_STOP_PRE_SIGKILL, SOCKET_SUCCESS); + else if (state == SOCKET_STOP_PRE_SIGKILL) socket_enter_stop_post(s, SOCKET_SUCCESS); + else if (state == SOCKET_FINAL_SIGTERM) + socket_enter_signal(s, SOCKET_FINAL_SIGKILL, SOCKET_SUCCESS); else socket_enter_dead(s, SOCKET_SUCCESS);