Fix client crash for long input lines

recv_input() misued lbuf_putc() and passed truncated lines without a
final newline to save_input(), failing the assertion in save_input().
This commit is contained in:
Markus Armbruster 2011-04-14 07:48:14 +02:00
parent 4c0b4c0416
commit 819e28421e

View file

@ -430,7 +430,7 @@ recv_input(int fd, struct ring *inbuf)
for (i = -n; i < 0; i++) {
ch = ring_peek(inbuf, i);
assert(ch != EOF);
if (ch != '\r' && lbuf_putc(&cmdbuf, ch)) {
if (ch != '\r' && lbuf_putc(&cmdbuf, ch) > 0) {
line = lbuf_line(&cmdbuf);
if (auxfp)
fputs(line, auxfp);