From 387348968842dce1fd5da139fc858866c10830e2 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 10 Jun 2009 16:05:39 +0000 Subject: [PATCH] Simply leave the function, this should prevent a segfault. git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@777 7dcaeef0-15fb-0310-b436-a5af3365683c --- libssh/channels.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libssh/channels.c b/libssh/channels.c index 23f4ceb5..6bf68446 100644 --- a/libssh/channels.c +++ b/libssh/channels.c @@ -905,7 +905,8 @@ int channel_write(CHANNEL *channel, const void *data, u32 len) { while(channel->remote_window == 0) { /* parse every incoming packet */ if (packet_wait(channel->session, 0, 0) == SSH_ERROR) { - goto error; + leave_function(); + return SSH_ERROR; } } effectivelen = len > channel->remote_window ? channel->remote_window : len;