summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2007-06-11 16:27:45 +0000
committerLennart Poettering <lennart@poettering.net>2007-06-11 16:27:45 +0000
commit7b73ee04ec022cfa2410422aa344d7626f3c17fb (patch)
treecad07b5fc6d1cda2ccaca1f004169a7f8e530ed1
parent1f3ec6f89d18e5763098fcde062b9290c6541c09 (diff)
fix pid file parsing
git-svn-id: file:///home/lennart/svn/public/libdaemon/trunk@123 153bfa13-eec0-0310-be40-b0cb6a0e1b4b
-rw-r--r--libdaemon/dpid.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libdaemon/dpid.c b/libdaemon/dpid.c
index 4cfba91..c7ec2b0 100644
--- a/libdaemon/dpid.c
+++ b/libdaemon/dpid.c
@@ -103,6 +103,7 @@ pid_t daemon_pid_file_is_running(void) {
}
txt[l] = 0;
+ txt[strcspn(txt, "\r\n")] = 0;
errno = 0;
lpid = strtol(txt, &e, 10);
@@ -111,6 +112,7 @@ pid_t daemon_pid_file_is_running(void) {
if (errno != 0 || !e || *e || (long) pid != lpid) {
daemon_log(LOG_WARNING, "PID file corrupt, removing. (%s)", fn);
unlink(fn);
+ errno = EINVAL;
goto finish;
}