chiark / gitweb /
ptyfw: add missing error check
[elogind.git] / src / vconsole / vconsole-setup.c
index e79ad2a5f069d4aa22667b3cf1703f2ed44185a5..28371711b6badd2404dd1d6221d0bdfda4027538 100644 (file)
@@ -54,8 +54,9 @@ static int disable_utf8(int fd) {
         if (ioctl(fd, KDSKBMODE, K_XLATE) < 0)
                 r = -errno;
 
-        if (loop_write(fd, "\033%@", 3, false) < 0)
-                r = -errno;
+        k = loop_write(fd, "\033%@", 3, false);
+        if (k < 0)
+                r = k;
 
         k = write_string_file("/sys/module/vt/parameters/default_utf8", "0");
         if (k < 0)
@@ -86,8 +87,9 @@ static int enable_utf8(int fd) {
                         r = -errno;
         }
 
-        if (loop_write(fd, "\033%G", 3, false) < 0)
-                r = -errno;
+        k = loop_write(fd, "\033%G", 3, false);
+        if (k < 0)
+                r = k;
 
         k = write_string_file("/sys/module/vt/parameters/default_utf8", "1");
         if (k < 0)
@@ -122,10 +124,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 +161,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 +310,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 +319,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)