goto finish;
STRV_FOREACH(i, files) {
- char *path;
+ _cleanup_free_ char *path = NULL;
if (!unit_name_is_valid(*i, TEMPLATE_VALID)) {
if (r == 0)
q = null_or_empty_path(path);
if (q > 0) {
- if (unlink(path) >= 0) {
- mark_symlink_for_removal(&remove_symlinks_to, path);
+ if (unlink(path) < 0)
+ q = -errno;
+ else {
+ q = mark_symlink_for_removal(&remove_symlinks_to, path);
add_file_change(changes, n_changes, UNIT_FILE_UNLINK, path, NULL);
-
- free(path);
- continue;
}
-
- q = -errno;
}
if (q != -ENOENT && r == 0)
r = q;
-
- free(path);
}
UnitFileState state;
state = unit_file_get_state(scope, root_dir, *i);
- if (state < 0) {
- log_error_errno(-state, "Failed to get unit file state for %s: %m", *i);
- return state;
- }
+ if (state < 0)
+ return log_error_errno(state, "Failed to get unit file state for %s: %m", *i);
if (state == UNIT_FILE_MASKED || state == UNIT_FILE_MASKED_RUNTIME) {
log_error("Failed to enable unit: Unit %s is masked", *i);