From 27ef73507b69608c63bd7d1684b7d9987fbcce53 Mon Sep 17 00:00:00 2001 From: "arg@mig29" Date: Sun, 26 Nov 2006 13:31:36 +0100 Subject: applied Jukka's stdinread patch --- main.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/main.c b/main.c index 750366e7..86cd3f9d 100644 --- a/main.c +++ b/main.c @@ -274,9 +274,10 @@ main(int argc, char *argv[]) { eprint("select failed\n"); } if(FD_ISSET(STDIN_FILENO, &rd)) { - switch(r = read(STDIN_FILENO, stext, sizeof(stext))) { + switch(r = read(STDIN_FILENO, stext, sizeof(stext) - 1)) { case -1: strncpy(stext, strerror(errno), sizeof(stext)); + stext[sizeof(stext) - 1] = '\0'; readin = False; break; case 0: @@ -284,7 +285,7 @@ main(int argc, char *argv[]) { readin = False; break; default: - stext[r-1] = 0; + stext[r - (stext[r - 1] == '\n' ? 1 : 0)] = '\0'; } drawstatus(); } -- cgit v1.2.3