From 930c7fbcc1c236328d0875f857c9ae03d5ad03ec Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Sat, 12 Sep 2015 01:23:04 +0000 Subject: s6-rc-update bugfixes. Now works on nops. --- src/libs6rc/s6rc_servicedir_copy_online.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/libs6rc') diff --git a/src/libs6rc/s6rc_servicedir_copy_online.c b/src/libs6rc/s6rc_servicedir_copy_online.c index 6e14844..76d9e10 100644 --- a/src/libs6rc/s6rc_servicedir_copy_online.c +++ b/src/libs6rc/s6rc_servicedir_copy_online.c @@ -36,7 +36,12 @@ int s6rc_servicedir_copy_online (char const *src, char const *dst) { str_copy(dstfn + dstlen + 1, s6rc_servicedir_file_list[i].name) ; str_copy(oldfn + dstlen + 5, s6rc_servicedir_file_list[i].name) ; - if (rename(dstfn, oldfn) < 0) { e = errno ; goto errrename ; } + if (rename(dstfn, oldfn) < 0 + && (errno != ENOENT || s6rc_servicedir_file_list[i].options & SVFILE_MANDATORY)) + { + e = errno ; + goto errrename ; + } } n = i ; while (i--) -- cgit v1.3.1