From: Lennart Poettering Date: Mon, 27 Sep 2010 22:29:09 +0000 (+0200) Subject: service: shortcut sysv provides on ourselves X-Git-Tag: v11~60 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=caca31b57621d4c5632e1fbf9ffa4259f05a13e5 service: shortcut sysv provides on ourselves --- diff --git a/src/service.c b/src/service.c index 6a4d350c9..021bc8676 100644 --- a/src/service.c +++ b/src/service.c @@ -293,6 +293,7 @@ static int sysv_translate_facility(const char *name, char **_r) { } if (*name == '$') + /* This is a heuristic. */ r = unit_name_build(name+1, NULL, ".target"); else r = sysv_translate_name(name); @@ -585,6 +586,11 @@ static int service_load_sysv_path(Service *s, const char *path) { goto finish; } + if (streq(n, file_name_from_path(path))) { + free(n); + continue; + } + r = sysv_translate_facility(n, &m); free(n); @@ -630,6 +636,11 @@ static int service_load_sysv_path(Service *s, const char *path) { goto finish; } + if (streq(n, file_name_from_path(path))) { + free(n); + continue; + } + r = sysv_translate_facility(n, &m); free(n);