Przeglądaj źródła

tools: kwboot: Fix restoring terminal

Call tcsetattr() only if the file descriptor is valid. It may be
invalidated by previous lines (if it is not a tty descriptor).

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Stefan Roese <sr@denx.de>
Reviewed-by: Chris Packham <judge.packham@gmail.com>
Tested-by: Chris Packham <judge.packham@gmail.com>
Pali Rohár 2 lat temu
rodzic
commit
ec0fe5b84e
1 zmienionych plików z 2 dodań i 1 usunięć
  1. 2 1
      tools/kwboot.c

+ 2 - 1
tools/kwboot.c

@@ -558,7 +558,8 @@ kwboot_terminal(int tty)
 		}
 	} while (quit[s] != 0);
 
-	tcsetattr(in, TCSANOW, &otio);
+	if (in >= 0)
+		tcsetattr(in, TCSANOW, &otio);
 out:
 	return rc;
 }