diff options
Diffstat (limited to 'src/shared')
| -rw-r--r-- | src/shared/install.c | 5 | 
1 files changed, 3 insertions, 2 deletions
| diff --git a/src/shared/install.c b/src/shared/install.c index c37cf1948a..3d2b5ae77f 100644 --- a/src/shared/install.c +++ b/src/shared/install.c @@ -2190,6 +2190,7 @@ int unit_file_get_list(                          _cleanup_(unit_file_list_free_onep) UnitFileList *f = NULL;                          struct dirent *de;                          _cleanup_free_ char *path = NULL; +                        bool also = false;                          errno = 0;                          de = readdir(d); @@ -2243,7 +2244,7 @@ int unit_file_get_list(                          if (!path)                                  return -ENOMEM; -                        r = unit_file_can_install(&paths, root_dir, path, true, NULL); +                        r = unit_file_can_install(&paths, root_dir, path, true, &also);                          if (r == -EINVAL ||  /* Invalid setting? */                              r == -EBADMSG || /* Invalid format? */                              r == -ENOENT     /* Included file not found? */) @@ -2253,7 +2254,7 @@ int unit_file_get_list(                          else if (r > 0)                                  f->state = UNIT_FILE_DISABLED;                          else -                                f->state = UNIT_FILE_STATIC; +                                f->state = also ? UNIT_FILE_INDIRECT : UNIT_FILE_STATIC;                  found:                          r = hashmap_put(h, basename(f->path), f); | 
