When running askfirst on an unused tty device askfirst starts busylooping forever. Fix this by returning an error if we read an EOF.
Signed-off-by: Helmut Schaa <helmut.sc...@googlemail.com> --- askfirst.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/askfirst.c b/askfirst.c index 9916486..6ad77aa 100644 --- a/askfirst.c +++ b/askfirst.c @@ -42,12 +42,19 @@ static int redirect_output(const char *dev) int main(int argc, char **argv) { + int c; + if (redirect_output(argv[1])) fprintf(stderr, "%s: Failed to open %s\n", argv[0], argv[1]); printf("Please press Enter to activate this console.\n"); - while (getchar() != 0xA) - ; + do { + c = getchar(); + if (c == EOF) + return -1; + } + while (c != 0xA); + execvp(argv[2], &argv[2]); printf("%s: Failed to execute %s\n", argv[0], argv[2]); -- 1.7.10.4 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel