diff options
Diffstat (limited to 'qpid/cpp')
| -rw-r--r-- | qpid/cpp/src/qpid/sys/windows/Socket.cpp | 17 |
1 files changed, 10 insertions, 7 deletions
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) |
