analyze: use _cleanup_ for freeing the manager object
authorLennart Poettering <lennart@poettering.net>
Wed, 20 Jun 2018 20:22:22 +0000 (22:22 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 20 Jun 2018 21:59:29 +0000 (23:59 +0200)
src/analyze/analyze-verify.c

index 7f606ee..ed36953 100644 (file)
@@ -225,17 +225,16 @@ static int verify_unit(Unit *u, bool check_man) {
 }
 
 int verify_units(char **filenames, UnitFileScope scope, bool check_man, bool run_generators) {
-        _cleanup_free_ char *var = NULL;
-        Manager *m = NULL;
-        char **filename;
-        int r = 0, k;
-
-        Unit *units[strv_length(filenames)];
-        int i, count = 0;
         const uint8_t flags = MANAGER_TEST_RUN_BASIC |
                               MANAGER_TEST_RUN_ENV_GENERATORS |
                               run_generators * MANAGER_TEST_RUN_GENERATORS;
 
+        _cleanup_(manager_freep) Manager *m = NULL;
+        Unit *units[strv_length(filenames)];
+        _cleanup_free_ char *var = NULL;
+        int r = 0, k, i, count = 0;
+        char **filename;
+
         if (strv_isempty(filenames))
                 return 0;
 
@@ -253,10 +252,8 @@ int verify_units(char **filenames, UnitFileScope scope, bool check_man, bool run
         log_debug("Starting manager...");
 
         r = manager_startup(m, NULL, NULL);
-        if (r < 0) {
-                log_error_errno(r, "Failed to start manager: %m");
-                goto finish;
-        }
+        if (r < 0)
+                return log_error_errno(r, "Failed to start manager: %m");
 
         manager_clear_jobs(m);
 
@@ -288,8 +285,5 @@ int verify_units(char **filenames, UnitFileScope scope, bool check_man, bool run
                         r = k;
         }
 
-finish:
-        manager_free(m);
-
         return r;
 }