X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=load-fragment.c;h=94bdf171af56782cfae35bedade867142807942a;hb=b08d03ffe58332f590aae5c78a85e4fc0b8588ce;hp=1a334bbc13a5cfe543e646f5cdcb5c031e77851b;hpb=b19e7dc0104c8839835a90d7df20c2eeb631e07e;p=elogind.git diff --git a/load-fragment.c b/load-fragment.c index 1a334bbc1..94bdf171a 100644 --- a/load-fragment.c +++ b/load-fragment.c @@ -647,6 +647,8 @@ static int open_follow(char **filename, FILE **_f, Set *names, char **_id) { if (c++ >= FOLLOW_MAX) return -ELOOP; + path_kill_slashes(*filename); + /* Add the file name we are currently looking at to * the names of this unit */ name = file_name_from_path(*filename); @@ -804,12 +806,12 @@ static int load_from_path(Unit *u, const char *path) { if ((r = unit_add_name(u, k)) < 0) goto finish; - if (id == k) - assert_se(u->meta.id = set_get(u->meta.names, k)); free(k); } + unit_choose_id(u, id); + free(u->meta.load_path); u->meta.load_path = filename; filename = NULL;