From 04ce1dcebea173841f2cf999d288c6ed6fcb83d9 Mon Sep 17 00:00:00 2001 From: markus Date: Tue, 16 Nov 1999 23:04:18 +0000 Subject: bugfix: check for space if child has terminated, from: iedowse@maths.tcd.ie --- usr.bin/ssh/serverloop.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'usr.bin/ssh/serverloop.c') diff --git a/usr.bin/ssh/serverloop.c b/usr.bin/ssh/serverloop.c index 552c69c2952..2aec2cf194e 100644 --- a/usr.bin/ssh/serverloop.c +++ b/usr.bin/ssh/serverloop.c @@ -269,8 +269,9 @@ retry_select: if (channel_max_fd() > max_fd) max_fd = channel_max_fd(); - /* If child has terminated, read as much as is available and then exit. */ - if (child_terminated) + /* If child has terminated and there is enough buffer space to read from + it, then read as much as is available and exit. */ + if (child_terminated && packet_not_very_much_data_to_write()) if (max_time_milliseconds == 0) max_time_milliseconds = 100; -- cgit v1.2.3-59-g8ed1b