Remove trailing newline from stdin

This commit is contained in:
Axel Wagner 2010-08-25 04:58:28 +02:00
parent bef80146e6
commit 6034eee647
1 changed files with 4 additions and 0 deletions

View File

@ -52,6 +52,8 @@ void stdin_io_cb(struct ev_loop *loop, ev_io *watcher, int revents) {
n = read(fd, buffer + rec, buffer_len - rec); n = read(fd, buffer + rec, buffer_len - rec);
if (n == -1) { if (n == -1) {
if (errno == EAGAIN) { if (errno == EAGAIN) {
/* remove trailing newline and finish up */
buffer[rec-1] = '\0';
break; break;
} }
printf("ERROR: read() failed!"); printf("ERROR: read() failed!");
@ -66,6 +68,8 @@ void stdin_io_cb(struct ev_loop *loop, ev_io *watcher, int revents) {
buffer_len += STDIN_CHUNK_SIZE; buffer_len += STDIN_CHUNK_SIZE;
FREE(tmp); FREE(tmp);
} else { } else {
/* remove trailing newline and finish up */
buffer[rec-1] = '\0';
break; break;
} }
} }