While the previous commit seemed to correct a problem, it actually exposed
another problem. Commit this until a proper fix is found
Этот коммит содержится в:
родитель
2b1c979d7e
Коммит
50fd6590f0
@ -1729,11 +1729,8 @@ LIBSSH2_API int libssh2_channel_free(LIBSSH2_CHANNEL *channel)
|
|||||||
|
|
||||||
/* Allow channel freeing even when the socket has lost its connection */
|
/* Allow channel freeing even when the socket has lost its connection */
|
||||||
if (!channel->local.close && (session->socket_state == LIBSSH2_SOCKET_CONNECTED)) {
|
if (!channel->local.close && (session->socket_state == LIBSSH2_SOCKET_CONNECTED)) {
|
||||||
rc = libssh2_channel_close(channel);
|
while ((rc = libssh2_channel_close(channel)) == PACKET_EAGAIN);
|
||||||
if (rc == PACKET_EAGAIN) {
|
if (rc) {
|
||||||
return PACKET_EAGAIN;
|
|
||||||
}
|
|
||||||
else if (rc) {
|
|
||||||
channel->free_state = libssh2_NB_state_idle;
|
channel->free_state = libssh2_NB_state_idle;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user