bugfix: initialize pid (as read from pidfile) to zero
[oweals/tinc.git] / lib / pidfile.c
index 08d96dfe6c02303000bcb1545d96cca793a144c2..426cbf392c10d903add23a1ae130fd9e4b96bfb7 100644 (file)
@@ -37,7 +37,7 @@
 pid_t read_pid (char *pidfile)
 {
   FILE *f;
-  long pid;
+  long pid = 0;
 
   if (!(f=fopen(pidfile,"r")))
     return 0;
@@ -85,12 +85,11 @@ pid_t write_pid (char *pidfile)
   pid_t pid;
 
   if ((fd = open(pidfile, O_RDWR|O_CREAT, 0644)) == -1) {
-      close(fd);
       return 0;
   }
 
   if ((f = fdopen(fd, "r+")) == NULL) {
-      fclose(f);
+      close(fd);
       return 0;
   }