소스 검색

Prevent hang when closing TLS connection after network failure

Related to 2c0b486d, 5d68c005. Caused by 268f6355.

(cherry picked from commit aff5cba787eef3dbad88f075bb7a4986922fbee8)

Source commit: f22c61b43b880a3a1138ecb9efca02a0922b92d7
Martin Prikryl 4 년 전
부모
커밋
a55d7c2d73
1개의 변경된 파일2개의 추가작업 그리고 2개의 파일을 삭제
  1. 2 2
      source/filezilla/AsyncSslSocketLayer.cpp

+ 2 - 2
source/filezilla/AsyncSslSocketLayer.cpp

@@ -606,10 +606,10 @@ int CAsyncSslSocketLayer::Receive(void* lpBuf, int nBufLen, int nFlags)
 
 void CAsyncSslSocketLayer::Close()
 {
-  if (!m_nShutDown && m_bSslEstablished && !m_nCriticalError)
+  if (!m_nShutDown && m_bSslEstablished && !m_nNetworkError && !m_nCriticalError)
   {
     ShutDown();
-    while (!ShutDownComplete())
+    while (!ShutDownComplete() && !m_nNetworkError && !m_nCriticalError)
     {
       OnSend(0);
     }