diff --git a/src/channels.c b/src/channels.c index 78d9ff75..0a8b9f2f 100644 --- a/src/channels.c +++ b/src/channels.c @@ -1329,7 +1329,9 @@ static int channel_write_common(ssh_channel channel, "Wait for a growing window message..."); rc = ssh_handle_packets_termination(session, SSH_TIMEOUT_DEFAULT, ssh_channel_waitwindow_termination,channel); - if (rc == SSH_ERROR || !ssh_channel_waitwindow_termination(channel)) + if (rc == SSH_ERROR || + !ssh_channel_waitwindow_termination(channel) || + channel->session->session_state == SSH_SESSION_STATE_ERROR) goto out; continue; }