summaryrefslogtreecommitdiff
path: root/src/service.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/service.c')
-rw-r--r--src/service.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/service.c b/src/service.c
index 797f285774..5706d7c490 100644
--- a/src/service.c
+++ b/src/service.c
@@ -239,9 +239,9 @@ static char *sysv_translate_name(const char *name) {
/* Drop Debian-style .sh suffix */
strcpy(stpcpy(r, name) - 3, ".service");
#ifdef TARGET_ARCH
- else if (startswith(name, "@"))
- /* Drop Arch-style background prefix */
- strcpy(stpcpy(r, name + 1), ".service");
+ else if (startswith(name, "@"))
+ /* Drop Arch-style background prefix */
+ strcpy(stpcpy(r, name + 1), ".service");
#endif
else
/* Normal init scripts */
@@ -326,6 +326,9 @@ static int sysv_fix_order(Service *s) {
if (s == t)
continue;
+ if (t->meta.load_state != UNIT_LOADED)
+ continue;
+
if (t->sysv_start_priority < 0)
continue;