From a74f1a0dfa3b506d6fed95772f0991de472ae37b Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 10 Jun 2007 09:24:55 +0000 Subject: [PATCH] generate disconnection event if recv() returns 0 in Detected_Read() (patch 1730589) [backport from HEAD] git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@46388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/unix/gsocket.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/unix/gsocket.cpp b/src/unix/gsocket.cpp index 659f709be5..e2423cdd2c 100644 --- a/src/unix/gsocket.cpp +++ b/src/unix/gsocket.cpp @@ -1751,6 +1751,12 @@ void GSocket::Detected_Read() { CALL_CALLBACK(this, GSOCK_CONNECTION); } + else if (num == 0) + { + /* graceful shutdown */ + CALL_CALLBACK(this, GSOCK_LOST); + Shutdown(); + } else { /* Do not throw a lost event in cases where the socket isn't really lost */