diff options
Diffstat (limited to 'src/sysctl')
-rw-r--r-- | src/sysctl/sysctl.c | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/src/sysctl/sysctl.c b/src/sysctl/sysctl.c index f9d282d1cb..d04a2cff15 100644 --- a/src/sysctl/sysctl.c +++ b/src/sysctl/sysctl.c @@ -266,21 +266,19 @@ static int parse_argv(int argc, char *argv[]) { static int run(int argc, char *argv[]) { _cleanup_(ordered_hashmap_free_free_freep) OrderedHashmap *sysctl_options = NULL; - int r = 0, k; + int r, k; r = parse_argv(argc, argv); if (r <= 0) - goto finish; + return r; log_setup_service(); umask(0022); sysctl_options = ordered_hashmap_new(&path_hash_ops); - if (!sysctl_options) { - r = log_oom(); - goto finish; - } + if (!sysctl_options) + return log_oom(); r = 0; @@ -297,16 +295,13 @@ static int run(int argc, char *argv[]) { char **f; r = conf_files_list_strv(&files, ".conf", NULL, 0, (const char**) CONF_PATHS_STRV("sysctl.d")); - if (r < 0) { - log_error_errno(r, "Failed to enumerate sysctl.d files: %m"); - goto finish; - } + if (r < 0) + return log_error_errno(r, "Failed to enumerate sysctl.d files: %m"); if (arg_cat_config) { (void) pager_open(arg_pager_flags); - r = cat_files(NULL, files, 0); - goto finish; + return cat_files(NULL, files, 0); } STRV_FOREACH(f, files) { @@ -320,9 +315,6 @@ static int run(int argc, char *argv[]) { if (k < 0 && r == 0) r = k; -finish: - pager_close(); - return r; } |