From bbf53bb9b8522fa020f8859659e5b3af303eea3b Mon Sep 17 00:00:00 2001 From: "Jerry (Xinyu Hou)" Date: Fri, 5 Jun 2015 13:35:22 -0700 Subject: [PATCH] Return the same job on retry #4584 --- src/lib/net/TCPSocket.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/lib/net/TCPSocket.cpp b/src/lib/net/TCPSocket.cpp index ea0a8cb4..91655ae3 100644 --- a/src/lib/net/TCPSocket.cpp +++ b/src/lib/net/TCPSocket.cpp @@ -483,16 +483,21 @@ TCPSocket::serviceConnected(ISocketMultiplexerJob* job, } const void* buffer = m_outputBuffer.peek(buffSize); + if (isSecure()) { if (isSecureReady()) { - s_retryOutputBufferSize = buffSize; status = secureWrite(buffer, buffSize, bytesWrote); if (status > 0) { s_retryOutputBufferSize = 0; + } else if (status < 0) { return NULL; } + else if (status == 0) { + s_retryOutputBufferSize = buffSize; + return job; + } } else { return job; @@ -553,6 +558,9 @@ TCPSocket::serviceConnected(ISocketMultiplexerJob* job, if (status < 0) { return NULL; } + else if (status == 0) { + return job; + } } else { return job;