chiark / gitweb /
cryptsetup-generator: Split main() into more functions and use hasmaps
[elogind.git] / src / vconsole / vconsole-setup.c
index e79ad2a5f069d4aa22667b3cf1703f2ed44185a5..b7a536b983a46ff3666323022d643efc40fc1866 100644 (file)
@@ -122,10 +122,9 @@ static int keymap_load(const char *vc, const char *map, const char *map_toggle,
         args[i++] = NULL;
 
         pid = fork();
-        if (pid < 0) {
-                log_error_errno(errno, "Failed to fork: %m");
-                return -errno;
-        } else if (pid == 0) {
+        if (pid < 0)
+                return log_error_errno(errno, "Failed to fork: %m");
+        else if (pid == 0) {
                 execv(args[0], (char **) args);
                 _exit(EXIT_FAILURE);
         }
@@ -160,10 +159,9 @@ static int font_load(const char *vc, const char *font, const char *map, const ch
         args[i++] = NULL;
 
         pid = fork();
-        if (pid < 0) {
-                log_error_errno(errno, "Failed to fork: %m");
-                return -errno;
-        } else if (pid == 0) {
+        if (pid < 0)
+                return log_error_errno(errno, "Failed to fork: %m");
+        else if (pid == 0) {
                 execv(args[0], (char **) args);
                 _exit(EXIT_FAILURE);
         }
@@ -310,7 +308,7 @@ int main(int argc, char **argv) {
         }
 
         if (font_pid > 0)
-                wait_for_terminate_and_warn(KBD_SETFONT, font_pid);
+                wait_for_terminate_and_warn(KBD_SETFONT, font_pid, true);
 
         r = keymap_load(vc, vc_keymap, vc_keymap_toggle, utf8, &keymap_pid);
         if (r < 0) {
@@ -319,7 +317,7 @@ int main(int argc, char **argv) {
         }
 
         if (keymap_pid > 0)
-                wait_for_terminate_and_warn(KBD_LOADKEYS, keymap_pid);
+                wait_for_terminate_and_warn(KBD_LOADKEYS, keymap_pid, true);
 
         /* Only copy the font when we started setfont successfully */
         if (font_copy && font_pid > 0)