From 660c4c1ad6daf3eb27b0894fc8346ee7ebd812a5 Mon Sep 17 00:00:00 2001 From: Clifford Allan Jansen Date: Thu, 17 May 2012 23:56:34 +0000 Subject: QPID-4008: added check for INVALID_SOCKET similar to Linux implementation git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1339927 13f79535-47bb-0310-9956-ffa450edef68 --- qpid/cpp/src/qpid/sys/windows/Socket.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'qpid/cpp/src') diff --git a/qpid/cpp/src/qpid/sys/windows/Socket.cpp b/qpid/cpp/src/qpid/sys/windows/Socket.cpp index b085f67539..a4374260cc 100644 --- a/qpid/cpp/src/qpid/sys/windows/Socket.cpp +++ b/qpid/cpp/src/qpid/sys/windows/Socket.cpp @@ -266,14 +266,17 @@ int Socket::getError() const void Socket::setTcpNoDelay() const { - int flag = 1; - int result = setsockopt(impl->fd, - IPPROTO_TCP, - TCP_NODELAY, - (char *)&flag, - sizeof(flag)); - QPID_WINSOCK_CHECK(result); + SOCKET& socket = impl->fd; nodelay = true; + if (socket != INVALID_SOCKET) { + int flag = 1; + int result = setsockopt(impl->fd, + IPPROTO_TCP, + TCP_NODELAY, + (char *)&flag, + sizeof(flag)); + QPID_WINSOCK_CHECK(result); + } } inline IOHandlePrivate* IOHandlePrivate::getImpl(const qpid::sys::IOHandle &h) -- cgit v1.2.1