diff --git a/core/sems.cpp b/core/sems.cpp index 7b7f406f..6f5d578f 100644 --- a/core/sems.cpp +++ b/core/sems.cpp @@ -92,7 +92,6 @@ static void sig_usr_un(int signo) WARN("Signal %d received.\n", signo); if (!main_pid || (main_pid == getpid())) { - unlink(pid_file.c_str()); static AmMutex clean_up_mut; static AmCondition need_clean(true); @@ -118,6 +117,8 @@ static void sig_usr_un(int signo) INFO("Finished.\n"); + unlink(pid_file.c_str()); + exit(0); }