Don't guess pid file name, either there's one declared or not

The previous patch just added dynamic tracking of non-declared pid
files, so we no longer need to make stuff up.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2021-03-11 22:00:29 +01:00
parent 280608f30e
commit 572291a1d9
2 changed files with 3 additions and 6 deletions
+2 -5
View File
@@ -95,18 +95,15 @@ char *pid_get_name(pid_t pid, char *name, size_t len)
char *pid_file(svc_t *svc)
{
static char path[256];
char fn[MAX_ARG_LEN];
if (svc->pidfile[0]) {
if (svc->pidfile[0] == '!')
return &svc->pidfile[1];
return svc->pidfile;
}
snprintf(fn, sizeof(fn), "%s%s.pid", _PATH_VARRUN, basename(svc->cmd));
errno = ENOENT;
return pid_runpath(fn, path, sizeof(path));
return NULL;
}
pid_t pid_file_read(const char *fn)
+1 -1
View File
@@ -616,7 +616,7 @@ static void service_cleanup(svc_t *svc)
char *fn;
fn = pid_file(svc);
if (remove(fn) && errno != ENOENT)
if (fn && remove(fn) && errno != ENOENT)
logit(LOG_CRIT, "Failed removing service %s pidfile %s",
basename(svc->cmd), fn);