- r = process_dir(u, *p, t, ".d", _UNIT_TYPE_INVALID);
+ r = process_dir(u, *p, t, ".d", _UNIT_DEPENDENCY_INVALID, &strv);
+ if (r < 0)
+ return r;
+ }
+ }
+
+ if (!strv_isempty(strv)) {
+ _cleanup_strv_free_ char **files = NULL;
+ char **f;
+
+ r = conf_files_list_strv(&files, ".conf", NULL, (const char**) strv);
+ if (r < 0) {
+ log_error("Failed to get list of configuration files: %s", strerror(-r));
+ return r;
+ }
+
+ STRV_FOREACH(f, files) {
+ r = config_parse(*f, NULL, UNIT_VTABLE(u)->sections, config_item_perf_lookup, (void*) load_fragment_gperf_lookup, false, u);