main.c
changeset 580 e9001b0f53bc
parent 578 8cb54d02a5b6
child 581 601842ee4484
equal deleted inserted replaced
579:010118c94013 580:e9001b0f53bc
   272 				continue;
   272 				continue;
   273 			else
   273 			else
   274 				eprint("select failed\n");
   274 				eprint("select failed\n");
   275 		}
   275 		}
   276 		if(FD_ISSET(STDIN_FILENO, &rd)) {
   276 		if(FD_ISSET(STDIN_FILENO, &rd)) {
   277 			switch(r = read(STDIN_FILENO, stext, sizeof(stext))) {
   277 			switch(r = read(STDIN_FILENO, stext, sizeof(stext) - 1)) {
   278 			case -1:
   278 			case -1:
   279 				strncpy(stext, strerror(errno), sizeof(stext));
   279 				strncpy(stext, strerror(errno), sizeof(stext));
       
   280 				stext[sizeof(stext) - 1] = '\0';
   280 				readin = False;
   281 				readin = False;
   281 				break;
   282 				break;
   282 			case 0:
   283 			case 0:
   283 				strncpy(stext, "EOF", sizeof(stext));
   284 				strncpy(stext, "EOF", sizeof(stext));
   284 				readin = False;
   285 				readin = False;
   285 				break;
   286 				break;
   286 			default:
   287 			default:
   287 				stext[r-1] = 0;
   288 				stext[r - (stext[r - 1] == '\n' ? 1 : 0)] = '\0';
   288 			}
   289 			}
   289 			drawstatus();
   290 			drawstatus();
   290 		}
   291 		}
   291 		if(FD_ISSET(xfd, &rd))
   292 		if(FD_ISSET(xfd, &rd))
   292 			procevent();
   293 			procevent();