Make sure that sm-notify really runs only once per reboot.
Signed-off-by: Neil Brown <neilb@suse.de>
}
if (strcmp(_SM_BASE_PATH, BASEDIR) == 0) {
- if (record_pid() == 0 && force == 0 && opt_update_state == 0)
+ if (record_pid() == 0 && force == 0 && opt_update_state == 1)
/* already run, don't try again */
exit(0);
}
snprintf(pid, 20, "%d\n", getpid());
fd = open("/var/run/sm-notify.pid", O_CREAT|O_EXCL|O_WRONLY, 0600);
- if (!fd)
+ if (fd < 0)
return 0;
write(fd, pid, strlen(pid));
close(fd);