chiark / gitweb /
modules-load: fix error handling
[elogind.git] / src / modules-load / modules-load.c
index b3f7af0ef84a3efe718ef7a3e72d71b89638d96b..49ee4203ddcb75352098babc083e48559a4349e0 100644 (file)
@@ -76,7 +76,7 @@ static int add_modules(const char *p) {
 }
 
 static int parse_proc_cmdline(void) {
-        char _cleanup_free_ *line = NULL;
+        _cleanup_free_ char *line = NULL;
         char *w, *state;
         int r;
         size_t l;
@@ -91,7 +91,7 @@ static int parse_proc_cmdline(void) {
         }
 
         FOREACH_WORD_QUOTED(w, l, line, state) {
-                char _cleanup_free_ *word;
+                _cleanup_free_ char *word;
 
                 word = strndup(w, l);
                 if (!word)
@@ -302,8 +302,8 @@ int main(int argc, char *argv[]) {
 
                 STRV_FOREACH(i, arg_proc_cmdline_modules) {
                         k = load_module(ctx, *i);
-                        if (k < 0)
-                                r = EXIT_FAILURE;
+                        if (k < 0 && r == 0)
+                                r = k;
                 }
 
                 r = conf_files_list_nulstr(&files, ".conf", NULL, conf_file_dirs);