X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fservice.c;h=5706d7c490273d1a2269e6f37309e4d3e336bff9;hp=797f28577408e5adbce0409b1d5063bff6e00435;hb=9f151f29fd37d9fdd3aad303cf0489482522918f;hpb=6ccb1b44295edfbd4f7bc0211fe55ad765ef2af3 diff --git a/src/service.c b/src/service.c index 797f28577..5706d7c49 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;