#include "bus-message.h"
#include "bus-error.h"
#include "bus-errors.h"
-#include "copy.h"
#include "mkdir.h"
static char **arg_types = NULL;
const char *active_state;
const char *sub_state;
const char *unit_file_state;
+ const char *unit_file_preset;
const char *description;
const char *following;
if (i->load_error)
printf(" Loaded: %s%s%s (Reason: %s)\n",
on, strna(i->load_state), off, i->load_error);
- else if (path && i->unit_file_state)
+ else if (path && !isempty(i->unit_file_state) && !isempty(i->unit_file_preset))
+ printf(" Loaded: %s%s%s (%s; %s; vendor preset: %s)\n",
+ on, strna(i->load_state), off, path, i->unit_file_state, i->unit_file_preset);
+ else if (path && !isempty(i->unit_file_state))
printf(" Loaded: %s%s%s (%s; %s)\n",
on, strna(i->load_state), off, path, i->unit_file_state);
else if (path)
i->following = s;
else if (streq(name, "UnitFileState"))
i->unit_file_state = s;
+ else if (streq(name, "UnitFilePreset"))
+ i->unit_file_preset = s;
else if (streq(name, "Result"))
i->result = s;
}
}
static int create_edit_temp_file(const char *new_path, const char *original_path, char **ret_tmp_fn) {
- _cleanup_close_ int fd = -1;
int r;
char *t;
return log_oom();
r = mkdir_parents(new_path, 0755);
- if (r < 0)
- return log_error_errno(r, "Failed to create directories for %s: %m", new_path);
+ if (r < 0) {
+ log_error_errno(r, "Failed to create directories for %s: %m", new_path);
+ free(t);
+ return r;
+ }
r = copy_file(original_path, t, 0, 0644);
if (r == -ENOENT) {