diff options
Diffstat (limited to 'src/librc')
-rw-r--r-- | src/librc/librc.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/librc/librc.c b/src/librc/librc.c index afd20d5f..c94c7a4b 100644 --- a/src/librc/librc.c +++ b/src/librc/librc.c @@ -501,7 +501,7 @@ bool rc_service_mark(const char *service, const RC_SERVICE state) base = basename_c(service); if (state != RC_SERVICE_STOPPED) { - if (! exists(init)) { + if (!exists(init)) { free(init); return false; } @@ -547,7 +547,10 @@ bool rc_service_mark(const char *service, const RC_SERVICE state) symlink(init, was); skip_wasinactive = true; } - unlink(file); + if (unlink(file) == -1) { + free(init); + return false; + } } } } |