diff --git a/sql/handle_connections_win.cc b/sql/handle_connections_win.cc
index e5b601d7fe0a624da519c4e9ff8376fa68e8d46b..0046dcdfd8ccea7456f82279b124762a4dd02e29 100644
--- a/sql/handle_connections_win.cc
+++ b/sql/handle_connections_win.cc
@@ -207,10 +207,11 @@ retry :
       &m_overlapped);
 
     DWORD last_error=  ret? 0: WSAGetLastError();
-    if (last_error == WSAECONNRESET)
+    if (last_error == WSAECONNRESET || last_error == ERROR_NETNAME_DELETED)
     {
       if (m_tp_io)
         CancelThreadpoolIo(m_tp_io);
+      closesocket(m_client_socket);
       goto retry;
     }